MSP430F149 I/O口控制

MSP430F149 I/O口控制

小小总结,完全原创。欢迎转载!请注明出处。技术交流QQ1626092784

视频教程地址:http://www.youku.com/playlist_show/id_20133778.html

相关的源程序、视频教程、电路图、开发软件打包下载:http://pan.baidu.com/share/link?shareid=1516264396&uk=471316729

 

关于MSP430单片机的IO口的特点这里有几篇文章写的已经很详细了,不再赘述。在此只简单地介绍一下一些注意事项,让大家马上可以应用为本教程目的。

所谓IO口控制就是控制单片机的端口输出0或1,或者读出端口的状态,也就是输入和输出。

先说输出。想让MSP430单片机的端口输出0或1必须做的一步就是设置对应端口的方向寄存器,就是你必须得告诉单片机你想让那个端口作为输出端口。比如你想让P2端口的第2位(P2.2)作为输出端口就得这样设置:P2DIR |=  BIT2; P2DIR就是P2口的方向寄存器的地址(可以在头文件里面查到),DIR就是direction(方向)。这条语句其实就是把P2DIR这个寄存器的第2个Bit位置1。当然你完全可以这样写:P2DIR |= 0x04;之所以用“|=”而不直接用“=”是只操作第二个Bit位而不影响其他Bit位。聪明的你应该已经学会设置了吧。方向设置为输出后就可以让这个端口输出0或1了。比如你想让P2.2输出0可以这么写:P2OUT &=  ~BIT2; 输出1可以这么写P2OUT  |=  BIT2;  当让也可以直接这么写: P2OUT &=  ~(0x04);  P2OUT  |=  (0x04); 

再说输入。输入和输出差不多,首先也是得设置对应端口的方向寄存器,就是你必须得告诉单片机你想让那个端口作为输出端入。比如你想让P3.1作为输入端口,那你就可以这么设置:P3DIR  &= ~BIT1; 设置完端口方向寄存器就可以读这个端口的状态了,不如我们将P3.1端口的状态付给变量啊就可以这么写:a = P3IN&BIT1;

好了,现在就可以基本运用MSP430单片机端口的输入输出功能了吧!点亮一个LED灯应该不成问题了,灯点亮了那么你也就对MSP430单片机入门了。

另外说明一下端口操作的一些写法。P2OUT &=  ~BIT2  其实就是将P2OUT寄存器的第二个Bit位清零而不影响其他Bit位,P2OUT  |=  BIT2其实就是将P2OUT寄存器的第二个Bit位置1而不影响其他的Bit位。这都是C语言运算的基础,相信大家都是搞程序的,仔细想想都会明白的。这样写的关键是只操作对应的Bit位而不影响其他Bit位,如果直接操作8个Bit位了那也就不必这么麻烦了,可以直接这样写:P2OUT = 0xf0。

最后还要说明的是关于MSP430单片机的端口还有很多寄存器,很多端口都有复用功能,比如PWM输出、ADC、外部中断等,这些在以后的章节中将会讲到。

你可能感兴趣的:(单片机,MSP430,IO口控制)