- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
*第5章MSP430单片机片内外设及其应用主要内容5.1通用I/O端口5.2定时器5.3硬件乘法器5.4FLASH存储器5.5比较器A5.7通用串行通信模块的异步模式5.8通用串行通信模块的同步模式5.10模数转换模块*5.1通用I/O端口在MSP430系统中,没有专门的输入/输出指令,输入输出操作都是通过数据传送指令来完成的。例如用指令MOVP1IN,R5表示读取P1端口内容,端口P1~P6都是按位寻址的,也就是说,端口每一位都可以独立用于输入/输出。*不管是灌电流还是拉电流,每个端口的输出晶体管都能限制输出电流(最大约6mA),以保证系统安全。*5.1.2端口P1和P2端口P1和P2具有输入/输出、中断和外部模块功能,这些功能可以通过他们各自的7个控制寄存器的设置来实现。下面Px代表P1和P2。*(1)PxDIR输入/输出方向寄存器相互独立的8位分别定义了8个引脚的输入/输出方向。8位在PUC后都被复位。使用时先根据需要定义端口的方向以满足设计者要求。0:I/O引脚被切换成输入模式;1:I/O引脚被切换成输出模式。*(2)PxIN输入寄存器输入寄存器是CPU扫描I/O引脚信号的只读寄存器。通过读取该寄存器的内容获取I/O端口的输入信号。此时引脚的方向必须选定为输入。读出时,该引脚的方向寄存器必须设置为输入模式。*(3)PxOUT输出寄存器该寄存器为I/O端口的输出缓冲寄存器。其内容可以像操作内存数据一样写入,以达到改变I/O口状态的目的。在读取时输出缓存的内容与引脚方向定义无关。改变方向寄存器的内容,输出缓存的内容不受影响。*(4)PxIE中断使能寄存器该寄存器的各引脚都有一位用以控制该引脚是否允许中断,0:禁止该位中断;1:允许该位中断。*(5)PxIES中断触发沿选择寄存器如果允许Px口的某个引脚中断,还需定义该引脚的中断触发沿。该寄存器的8位分别定义了Px口的8个引脚的中断触发沿。0:上升沿使相应标志置位;1:下降沿使相应标志置位。*(6)PxIFG中断标志寄存器该寄存器有8个标志位,它们含有相应引脚是否有待处理中断的信息,即相应引脚是否有中断请求。如果Px的某个引脚允许中断,同时选择上升沿,则当该引脚发生电平由低向高跳变时,PxIFG的相应位就会置位,表明在该引脚上有中断事件发生。0:没有中断请求;1:有中断请求。*(7)PxSEL功能选择寄存器P1和P2两端口还有其他片内外设功能,考虑减少引脚,将这些功能与芯片外的联系通过复用P1和P2引脚的方式来实现。PxSEL用来选择引脚的I/O端口功能与外围模块功能。0:选择引脚为I/O端口;1:选择引脚为外围模块功能。*5.1.3端口P3、P4、P5、P6这些端口没有中断能力,其余功能与P1和P2一样,能实现输入/输出功能和外围模块功能。每个端口有4个寄存器供用户使用。用户可通过这4个寄存器对他们进行访问和控制。每个端口的4个寄存器分别为:方向选择寄存器(PxDIR),输入寄存器(PxIN),输出寄存器(PxOUT)和功能选择寄存器。具体用法同P1、P2端口。*5.1.5端口的应用端口是单片机中最经常使用的外设资源。一般在程序的初始化阶段对端口进行配置,配置时先配置功能选择寄存器PxSEL,若为IO端口功能则继续配置方向寄存器PxDIR,若为输入则继续配置中断使能寄存器PxIE,若允许中断则继续配置中断触发沿选择寄存器PxIES。需要注意的是P1、P2端口的中断为多源中断,即P1端口的8位共用一个中断向量(MSP430x14x系列为0FFF8H),P2端口的8位也共用一个中断向量(MSP430x14x系列为0FFF2H)。当Px(P1或P2)端口上的8个引脚中任何一个引脚有中断触发时,都会进入到同一个中断服务程序,在中断服务程序中,首先应该通过PxIFG判断是哪一个引脚触发的中断,再执行相应的程序,最后还要用软件清除相应的PxIFG标志位。*举例1使用软件定时周期性取反P2.1.#includemsp430x14x.hvoidmain(void){WDTCTL=WDTPW+WDTHOLD;//停止看门狗。P2DIR|=0x02;//P2.1设置为输出。for(;;){unsignedinti; P2OUT^=0x02;//取反P2.1 /*软件延时*/i=50000;do(i--);
文档评论(0)