uchar Keyscan(void)
{
uchar i, j, temp, Buffer[4] = {0xef, 0xdf, 0xbf, 0x7f};
for(j = 0; j < 4; j++)
{
P1 = Buffer[j];
temp = 0x01;
for(i = 0; i < 4; i++)
{
if(!(P1 & temp)) /
return (i + j * 4); //返回取得的按键值
temp <<= 1; //判断的位,左移一位
}
}
return 16; //判断结束,没有键按下,返回16
}
如上,在什么情况下, if(!(P1 & temp)) 才执行后面的语句。???????
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
,搞明白了。
一周热门 更多>