关于PXIN 寄存器的问题。非常急,尝试了半小时没有找到规律
PXIN(我用的是P1IN)寄存器有没有确定的初始值?如果有的话是什么?当然我是说在外部没有连接东西的时候。在TI给的用户手册上它的初始值写的是“——”。还有就是当P1设置为输出状态时,P1IN的值是随什么变化呢?还是说保留着更改方向之前的值??谢谢大家了先 没人回复,我很忧桑啊{:cry:},我是遇到别人写的一个键盘扫描的程序,键盘连到了P1口,程序最初几行是:PIDIR=0xf0;
P1OUT |=0xf0;
uchar tmp;
P1OUT &= 0x00; // 设置P1OUT全为0,等待按键输入
tmp = P1IN; // 获取 p1IN
if ((key_Pressed == 0x00)&&((tmp & 0x0f) < 0x0f)) //如果有键按下
我不懂的是“(tmp & 0x0f) < 0x0f”这一句的意思岂不是说P1IN的低四位的值默认就是1了? PXIN是反映对应引脚的电平状态,上电的时候引脚是三态的,所以无法确定;要是悬空的话就更无法确定了。如果设置成输出,也是反映相应引脚电平的。
你说的那句话是取低四位与0X0F相比较。 qiuchen 发表于 2012-12-10 14:21 static/image/common/back.gif
PXIN是反映对应引脚的电平状态,上电的时候引脚是三态的,所以无法确定;要是悬空的话就更无法确定了。如果 ...
懂了,谢谢。{:handshake:}
页:
[1]