在MSP430书中看到的一些语句有些不明白 1. if (P1out&bit0) P1&=~(bit0); else P1out=bit0; 整个语句意思

[复制链接]
查看11 | 回复2 | 2013-2-15 16:54:38 | 显示全部楼层 |阅读模式
1 当P1.0为1时,将它清零;当P1.0为0时,将它置位;这样做划不来,用“ P1OUT ^= BIT0; ”更好一些;2 确实相反,前一个是清零,后一个是置位;3 举个例子:假设要读取P1.3的状态,并赋给nP13:先做P1IN&BIT3,这样得到的结果是一个8位二进制数,第三位是P1.3的值,其他位都被与运算清零了;然后再将这个二进制数右移3位,将P1.3的值挪到最右边,这样得到的结果就是一个不是0就是1的数了,再赋值就行了;写成一句话,就是:nP13=(P1in&bit3)>>3;4 LMP0模式是低功耗模式0,在该模式下,430的cpu是关闭的,但是仍然能响应中断。...
回复

使用道具 举报

千问 | 2013-2-15 16:54:38 | 显示全部楼层
1.如果P1输出寄存器的0位为1,则P1的第0位置低,否则P1.0口为高2.对,前者是置低,后者是置高3.我也不太明白4.LMP0模式是MSP430单片机的低功耗模式0,是几种低功耗模式中休眠深度最浅的一种模式,工作电流在100μA左右我现在也在学MSP430,不能像51那样位操作都快把我逼疯了……...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行