标题:
关于矩阵键盘的问题,请教各位大佬
[打印本页]
作者:
JoeForMZ
时间:
2017-9-20 21:14
标题:
关于矩阵键盘的问题,请教各位大佬
最近做一个项目,用到矩阵键盘,本以为这是整个项目中最简单的,结果没想到是一个BUG,请问如何判断按键按了几次,比如,按下S1进入设置界面,输入1234,再按下S1,设置成功并保存,再按下S1退出设置界面。我试过给一个变量a,按一次+1,然后用if判断,结果不可行,各位大佬遇过这问题吗?有没有好一点的思路,跪拜各位大佬!!!
作者:
wulin
时间:
2017-9-21 06:35
unsigned char key_scan()//4*4矩阵键盘扫描函数
{
//略
}
void key_service() //按键服务程序
{
static unsigned char count=0;//计数变量
key=key_scan(); //读取键值
switch(key)
{
case 0xee: //设置键键值
{
count++;
switch(count)
{
case 1:
//任务1
break;
case 2:
//任务2
break;
case 3:
//任务3
count=0;
break;
}
}
key=0; //执行完任务清0
break;
case 0xde:
//任务
key=0; //执行完任务清0
break;
......
......
......
......
case 0x77:
//任务
key=0; //执行完任务清0
break;
default:
break;
}
}
作者:
浪人
时间:
2017-9-23 13:58
设置一个标志变量,为0时且有键按下,致1并执行内容;为1时不执行;当所有键弹起重新致0
作者:
chouguiyu
时间:
2017-9-23 21:16
估计问题是出在按键的扫描和识别上
作者:
zl2168
时间:
2017-9-24 12:50
你错啦!应该是先理解才有好思路,而不是先有好思路,不要舍本求末。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1