矩阵键盘不行

2019-07-16 05:19发布

我的开发板上的矩阵键盘用行列反转扫描法一切正常,但是运用郭天祥老师的方法就不对了   请问是怎么会儿事  程序如下
P2=0xfe;
a=P2;
a=a&0xf0;
while(a!=0xf0)
{
  delay(200);
  a=P2;
     a=a&0xf0;
  while(a!=0xf0)
  {
   a=P2;
   switch(a)
   {
    case 0xee : num1=0;
    break;
    case 0xde : num1=1;
    break;
    case 0xbe : num1=2;
    break;
    case 0x7e : num1=3;
    break;
   }
   while(a!=0xf0)
   {
    a=P2;
    a=a&0xf0;
   }  
  }
}  故障情况是 右边两列矩阵键盘无效
1.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
随喜_寻满世界
1楼-- · 2019-07-16 10:58
 精彩回答 2  元偷偷看……
Lovedanpianji
2楼-- · 2019-07-16 11:12
P2=0xfe;
a=P2;
a=a&0xf0;
if(a!=0xf0)
{
  delay(200);
P2=0xfe;
  a=P2;
     a=a&0xf0;
if(a!=0xf0)
  {
   a=P2;
   switch(a)
   {
    case 0xee : num1=0;
    break;
    case 0xde : num1=1;
    break;
    case 0xbe : num1=2;
    break;
    case 0x7e : num1=3;
    break;
   }
   while(a!=0xf0)
   {
    a=P2;
    a=a&0xf0;
   }  
  }
}  
用这个看一下,前两个用while的话,有键按下就一直在第一个循环执行,跳不出去了

3楼-- · 2019-07-16 11:17
可能跟P2^6和P2^7这两个端口有关吧。
十月风城
4楼-- · 2019-07-16 12:06
等我将那些文件下载下来后,仿真一下试试!
十月风城
5楼-- · 2019-07-16 13:49
随喜_寻满世界 发表于 2012-7-4 20:33
《我是菜鸟啥也不懂》,我觉得键盘检测要根据具体电路编程序吧。看下你开发板是怎么接的电路,郭老师的电路 ...

弱弱地问一句,哪个论坛人比较多!本人也在学习单片机!
骑士城堡
6楼-- · 2019-07-16 14:41
 精彩回答 2  元偷偷看……

一周热门 更多>