凡亿专栏 | 按键的硬件消抖电路原理
按键的硬件消抖电路原理

为什么要进行按键消抖

按键消抖通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键消抖。

按键的抖动对于人类来说是感觉不到的,但对单片机来说,则是完全可以感应到的,而且还是一个很“漫长”的过程,因为单片机处理的速度在“微秒”级,而按键抖动的时间至少在“毫秒”级。

一次按键动作的电平波形如下图。存在抖动现象,其前后沿抖动时间一般在5ms~10ms之间。由于单片机运行速度非常快,经过A时刻的时候会检测到低电平判断按键被按下。当到了B时刻的时候,单片机同样会检测到高电平,误以为松开按键,然后又到了C时刻检测到低电平,判断到按键被按下。周而复始,在5-10ms内可能会出现很多次按下的动作,每一次按键的动作判断的次数都不相同。


6d2e1de05f2defe5e3db742685050e.png

为确保单片机对按键的一次闭合仅作一次处理,必须处理按键抖动问题。在按键闭合或者释放稳定时再读取按键的状态。


硬件消抖电路

硬件消抖一般有两种实现方式:

  • RS触发器

  • 电容滤波


RS触发器

利用RS触发器来吸收按键的抖动。一旦有键按下,触发器立即翻转,触电的抖动便不会再对输出产生影响,按键释放时也一样。RS触发电路消抖电路图如下。


32ecc203938b74310bd152323e4235.png


电容滤波

将电容并联在按键的两端,利用电容的放电的延时特性。将产生抖动的电平通过电容吸收掉。从而达到消抖的作用,电容消抖电路图如下图所示。


cbc9e6d63cadb7e579a70d48a954ae.png


总结

实际上,在没有MCU的情况下,对按键进行消抖通常是通过硬件消抖电路来实现。而在嵌入式开发中,大多数情况下都是通过程序来实现按键消抖。简单说就是加合适的延迟,显然这实现成本要比硬件电路方式低得多。

声明:本文转载自网络,如涉及作品内容、版权和其它问题,请于联系工作人员,我们将在第一时间和您对接删除处理!
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表凡亿课堂立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。
相关阅读
进入分区查看更多精彩内容>
精彩评论

暂无评论