unsigned char Keyscan(void)
{
unsigned char cord_h,cord_l;//行列值中间变量
P3=0x0f; //行线输出全为0
cord_h=P3&0x0f; //读入列线值
if(cord_h!=0x0f) //先检测有无按键按下
{
Delay(10); //去抖
if(cord_h!=0x0f)
{
cord_h=P3&0x0f; //读入列线值
P3=cord_h|0xf0; //输出当***值
cord_l=P3&0xf0; //读入行线值
return(cord_h+cord_l);//键盘最后组合码值
}
}
return(0xff); //返回该值
}
这个程序很简洁,而且效果不错。但是“ P3=cord_h|0xf0; cord_l=P3&0xf0; ”这两句我还没理解。呵呵!
文章评论(0条评论)
登录后参与讨论