P1OUT |= 0X01;//就是P1.0至高
P1OUT ^= 0X01;//就是P1.0取反
P1OUT &= ~0X01;//就是P1.0至低
msp430不再像51那样可以bit定义了。所以都是按位操作的,这个你以后熟悉了就慢慢的会懂的。
我也是这么过来的。
推荐你看一本书。《MSP430系列16位超低功耗单片机原理与实践》作 者:沈建华,杨艳琴出 版 社:北京航空航天大学出版社
举个例子
P4OUT &= ~BIT0等效于P4OUT = P4OUT ^ (~BIT0); 按位与
同样
P4OUT ^= ~BIT0等效于P4OUT = P4OUT ^ (~BIT0); 按位异或
P4OUT |= ~BIT0等效于P4OUT = P4OUT | (~BIT0); 按位或
比如原来P4输出为0000 1111即P4OUT=0x0F
经过P4OUT &= ~BIT0
BIT0=0000 0001 取反~BIT0=1111 1110
0000 1111 & 1111 1110
结果为0000 1110 即P4OUT = 0x0E;
这样P4的其它IO口输出状态不变只改变了P4的BIT0为低
A^=B相当于A=A^B; 其中^是异或操作符,意思是相同为假,不同为真。
A&=~B相当于A=A&(~B),其中~表示取反。
A|=B 相当于A=A|B,其中|表示或