在按键上增加电容去除干扰,在按键上串一个电阻也可以解决静电或者是其他干扰对按键造成的干扰。
软件去抖动也是一种非常常见的去抖动的方法,就是对按键进行多次的检测,每次检测都被按下,才认为按键被按下。软件去抖动要采用多次采集的方法,中间的间隔可以使用延时或者使用分时的思想来进行去抖动,一般的软件去抖中都是用分时思想去抖动。
扩展资料:
注意事项:
按键稳定闭合时间长短是由操作人员决定的,通常都会在100ms以上,刻意快速按的话能达到40-50ms左右,很难再低了。抖动时间是由按键的机械特性决定的,一般都会在10ms以内。
为了确保程序对按键的一次闭合或者一次断开只响应一次,必须进行按键的消抖处理。当检测到按键状态变化时,不是立即去响应动作,而是先等待闭合或断开稳定后再进行处理。
利用电容的充放电特性来对抖动过程中产生的电压毛刺进行平滑处理,从而实现消抖。但实际应用中,这种方式的效果往往不是很好,而且还增加了成本和电路复杂度,所以实际中使用的并不多。
参考资料来源:百度百科-按键消抖
参考资料来源:百度百科-单片机
在硬件上可采用在键输出端加RS触发器(双稳态触发器)或单稳态触发器构成去抖动电路,将去抖电路加在按键输出端。
在软件上采取的措施是:在检测到有按键按下时,执行一个10ms左右(具体时间应视所使用的按键进行调整)的延时程序后,再确认该键是否仍保持闭合状态电平,若仍保持闭合状态电平,则确认该键处于闭合状态,同理,在检测到该键释放后,也应该采用相同的步骤进行确认,从而可以消除抖动的影响。
我知道的有软件延时
触发反相器
还有用电容组成的小电路 自己查查啊
延时后再确认不一定是最好的方法,但肯定是最常用的方法。