MSP430F249的IO端口.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MSP430F249的IO端口

第3章 MSP430单片机通用I/O接口 I/O口是系统对外沟通的最基本部件,从基本的键盘、LED 到复杂的外设芯片等,都是通过IO口的输入、输出操作来进行读取或控制的。 图3.1 通用I/O接口应用示例图 其中按键为输入设备,按键未按下时,电阻R4、R5、R6将端口P1.0、P1.1、P1.2上拉到高电平,按键按下时,按键将对应的端口短路到地。P1.0、P1.1、P1.2要设为输入,P1.4、P1.5、P1.6外接发光二极管,要设置为输出。程序如下: #define BIT0 (0x0001) #define BIT1 (0x0002) #define BIT2 (0x0004) #define BIT3 (0x0008) #define BIT4 (0x0010) #define BIT5 (0x0020) #define BIT6 (0x0040) #define BIT7 (0x0080) P1DIR |= BIT4+BIT5 +BIT6; // P1.4、P1.5、P1.6设为输出 P1DIR = ~ (BIT0+BIT1+BIT2); // P1.0、P1.1、P1.2设为输入(可省略) 其中BIT0~BIT7为宏定义,P1DIR |= BIT4+BIT5 +BIT6是将P1DIR寄存器的第4、5、6比特位置1,即配置为输出;P1DIR = ~ (BIT0+BIT1+BIT2)是将P1DIR寄存器的第0、1、2比特位置0,即配置为输入。由于 PxDIR 寄存器在复位过程中会被清 0,没有被设置的 I/O 口方向均为输入状态,因此第二句可以被省略。对于所有已经设成输出状态的I/O口,可以通过 PxOUT寄存器设置其输出电平。 2、输入寄存器 PxIN 在输入的模式下,读取该寄存器的相应比特来获得相应引脚上的数据。在输入模式下,当I/O口相应输入高电平时,该寄存器相应的比特为1;当I/O口相应输入低电平时,该寄存器相应的比特则为0。PxIN寄存器的比特分配如下所示: PxIN.7 PxIN.6 PxIN.5 PxIN.4 PxIN.3 PxIN.2 PxIN.1 PxIN.0 该寄存器为只读寄存器,写无效。其每个比特可以单独读取,从而获得相应引脚上的输入数据或者引脚的状态。 3、输出寄存器PxOUT 在输出模式下,如果该寄存器的相应比特设置为1时,相应的引脚输出为高电平;如果设置该寄存器的相应比特为0时,则相应的引脚输出低电平。PxOUT寄存器的比特分配如下所示: PxOUT.7 Px OUT.6 PxOUT.5 Px OUT.4 PxOUT.3 Px OUT.2 Px OUT.1 PxOUT.0 值得注意的是:PxOUT复位时其值不确定,在使用过程中应该先使PxOUT的值确定以后才设置方向控制寄存器。 对于所有已经被设成输入状态的I/O 口,可以通过 PxIN 寄存器读回其输入电平。例如读回 P1.0口上所接按键的开关状态,若处于按下状态(低电平),则从 P1.4口输出低电平点亮 LED,程序如下: P1OUT = BIT4+BIT5 +BIT6; // P1.4~P1.6输出高电平 // 二极管阳极接高电平,二极管不发光 if((P1IN BIT0) == 0) P1OUT |= BIT4; //P1.4输出低电平点亮LED 4、功能选择寄存器PxSEL 用于设置Px口的每一个引脚作为一般I/O口使用还是作为外围模块的功能使用。当该寄存器的相应比特设置为1时,其对应的引脚为外围模块的功能,即第二功能,具体每个端口的第二功能请参考芯片手册。当该寄存器的相应比特设置为0时,其对应的引脚为一般I/O口。PxSEL寄存器的比特分配如下所示。其复位值全为0,默认为I/O口功能。 PxSEL.7 PxSEL.6 PxSEL.5 PxSEL.4 PxSEL.3 PxSEL.2 PxSEL.1 PxSEL.0 在MSP430F249单片机中,很多内部功能模块也需要和外界进行数据交换,为了不增加芯片引脚数量,大部分都和I/O口复用引脚,导致MSP430F249单片机的所有I/O口都具有第二功能。通过寄存器PxSEL可以设置某些I/O口作为第二功能使用。例如从MSP430F249芯片手册中可以查到,MSP430x249 系列单片机的 P3.4、P3.5 口的第二功能为串行口的 TXD、RXD。若需要将这两个引脚配置为串口收发引脚,则须将P3SEL的 第4、5比特位置高,程序如下: P3SEL |= BIT4 + BIT5; // P3.4,、P3.5 设

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档