uchar Keyscan(void)
{
uchar i,j, temp, Buffer[4] = {0xef, 0xdf, 0xbf, 0x7f};
for(j=0; j<4; j++)
{
P1 = Buffer[j];
_nop_();
_nop_();
_nop_();
temp=0x01;
for(i=0; i<4; i++)
{
if(!(P1 & temp))
{
return (i+j*4);
}
temp <<= 1;
}
}
}
以上是矩阵键盘程序中 按键部分的子程序 但是有一些疑问
1 结尾处 temp <<= 1;是什么意思,放在这里什么用 |