各位老师好,我有一个关于键盘行列扫描的问题请教。
时间:10-02
整理:3721RD
点击:
P3=0xfe; //扫描第一行
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(5);
P3=0xfe;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
我的问题是:为什么要与0XF0相与,在第一行时,与0XFE相与不也可以吗?保持低四位不变就可以哈?但为什么要与0XF0相与。
与0xf0,主要屏蔽掉temp低4位的干扰,因为是采取的扫描法,P3口的低4位要赋值不同的值,既然P3口低4位已经赋值,所以判断P3口的高4位就可以了,对于类似4x4按键扫描程序我推荐使用反正法,行扫描太慢,如果有什么帮助,可以加我的QQ:847704673