单片机按键消抖的方法,硬件软件都可以实现

描述

不管设计一个什么作品,按键总是少不了的,对于按键你知道那些呢?

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


 机械触点
 

    图1

抖动时间

  抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要用到。

  按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒,大家可以用示波器测试一下。键抖动会引起一次按键被误读多次。为确保CPU对键的一次闭合仅作一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键释放稳定后再作处理。

下面是两种消抖方法:

一、  硬件消抖 :

按键防抖威廉希尔官方网站 控制威廉希尔官方网站

所示利用RC 积分威廉希尔官方网站 来达成杂波的滤除与波形修整的威廉希尔官方网站 (如图1 )。

在S1 ON 的瞬间由于接触弹跳的关系,会使A 点电压呈现高速的断续现象,再S1 OFF时亦然,详(如图2所示),然而由于电容两端电压需由电压经电阻慢慢充电才会上升,使得B 点电位缓步上升情形:S1 OFF 时亦然,电容电压经R 放电,使B 点电压缓缓下降。此一变化,经史密特反相修整后,可得一标准负脉波输出,如波形图C 点所示。

机械触点

机械触点

用其他的各类触发器,锁存器亦可达到消抖效果。

二、   软件消抖 :

通过软件延时10ms达到消除抖动的效果,不加文字赘述。

三、   按键威廉希尔官方网站 :

独立按键

 机械触点

矩阵按键

机械触点

译码按键

 机械触点

AD模拟按键

机械触点

锁定按键

机械触点

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分