检测有按键按下时进行多次扫描 一般以5ms为间隔
如果5ms后 还是按下状态 那么就可以确定按键按下了
软件消抖一般延时10~20mS
切记,如果你的按键用到外部中断,中断里不要延时!
自从学了单片机,几乎用到了很多按键程序。看了很多消抖例程。
唯一让我现在一直还在使用就一个:安富莱 V4电路板的一个例程
你去他们论坛找找,绝对经典
硬件大概是靠滤波,软件也是这个方法,大多是延时检测。
按键触发的时候检测,抖动有个几ms,抖动完了稳定了再检测,两次一致就认为是按键触发了。中间抖动的脉冲不要他,相当于滤掉了。和硬件一样的原理。
都是根据按键触发时的波形,来处理的。