MSP430F149 I/O口如何控制? 所谓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。
|