单片机按键消抖问题,加了消抖功能还是没用,为什么?代码写下来了

如题所述

第1个回答  推荐于2016-04-30
没用过51,不知P0能否这样用。首先硬件是否正常,矩阵按键是否一一对应P0
uchar scan1=0,scan2=0,keytemp;
P0=0x0f;
scan1=P0;
if(scan1!=0x0f)
{
delayms(10);

scan1=P0;
if(scan1!=0x0f)
{
P0=0xf0;
scan2=P0;
keytemp=scan1|scan2;
return(keytemp);

}
else
return(0xff);
}
else
return(0xff);
实际产品中不能加这种傻等的延时去抖追问

按照你这样子吗?还是不行

追答

你所说的不行是什么意思?返回值是多少?

本回答被提问者和网友采纳
第2个回答  2015-01-09
你知道消抖是什么意思吗?你怎么知道没有起到消抖的作用呢?消抖是看不出来的,必须特殊的测试才能看出消抖的效果。追问

我有显示呀,从仿真硬件的显示可以看出来吧

第3个回答  2015-01-09
关注这个问题
相似回答