原创 按键消抖——硬件消抖和软件消抖

2012-3-25 17:43 8413 18 19 分类: FPGA/CPLD

 

一、按键电路

       常用的非编码键盘,每个键都是一个常开开关电路。

      计数器输入脉冲最好不要直接接普通的按键开关,因为

记数器的记数速度非常快,按键、触点等接触时会有多次接

通和断开的现象。我们感觉不到,可是记数器却都记录了下

来。例如,虽然只按了1下,记数器可能记了3下。因此,使

用按键的记数电路都会增加单稳态电路避免记数错误。 

 

1.jpg

 

二、按键消抖

        通常的按键所用开关为机械弹性开关,当机械触点断开

、闭合时,电压信号小型如下图。由于机械触点的弹性作用,

一个按键开关在闭合时不会马上稳定地接通,在断开时也不

会一下子断开。因而在闭合及断开的瞬间均伴随有一连串的

抖动,如下图。抖动时间的长短由按键的机械特性决定,一般

为5ms~10ms。这是一个很重要的时间参数,在很多场合都要

用到。  

2.jpg
 

      按键稳定闭合时间的长短则是由操作人员的按键动作决

定的,一般为零点几秒至数秒。键抖动会引起一次按键被误

读多次。为确保CPU对键的一次闭合仅作一次处理,必须去除

键抖动。在键闭合稳定时读取键的状态,并且必须判别到键

释放稳定后再作处理。按键的抖动,可用硬件或软件两种方

法。

 

三、硬件消抖

       在键数较少时可用硬件方法消除键抖动。下图所示的RS

触发器为常用的硬件去抖。

        图中两个“与非”门构成一个RS触发器。当按键未按下

时,输出为1;当键按下时,输出为0。此时即使用按键的机械

性能,使按键因弹性抖动而产生瞬时断开(抖动跳开B),中

要按键不返回原始状态A,双稳态电路的状态不改变,输出保

持为0,不会产生抖动的波形。也就是说,即使B点的电压波形

是抖动的,但经双稳态电路之后,其输出为正规的矩形波。这

一点通过分析RS触发器的工作过程很容易得到验证。

3.jpg

       利用电容的放电延时,采用并联电容法,也可以实现硬

件消抖:

 

4.jpg

四、软件延时消抖

       如果按键较多,常用软件方法去抖,即检测出键闭合后执

行一个延时程序,产生5ms~10ms的延时,让前沿抖动消失后

再一次检测键的状态,如果仍保持闭合状态电平,则确认为真

正有键按下。当检测到按键释放后,也要给5ms~10ms的延时

,待后沿抖动消失后才能转入该键的处理程序。
  

 

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户377235 2015-6-24 17:11

有没有专业消抖的芯片?
相关推荐阅读
bitao1983_395643617 2016-01-26 16:32
华为硬件开发是怎么做的,有什么不一样?(感同身受)
朱晓明 最近很多朋友咨询的一些硬件问题,发现朋友们没有仔细的看datasheet,也没有好好的做电路分析。我讲一讲华为是怎么做硬件开发的,给正在做硬件开发的朋友一些启示。说的不对的地方,大家批...
bitao1983_395643617 2015-12-08 11:24
(多图)宽带数字下变频器的FPGA实现
随着软件无线电理论的日趋成熟,软件无线电技术越来越多地应用到军用或民用通信系统中。其中,数字下变频技术(DDC)是软件无线电中的核心技术之一。数字下变频工作在模拟前端输入模拟信号经模数转换之后,而在终...
bitao1983_395643617 2015-10-15 09:41
扒开看移动5G原型机,聊聊其硬件设计的构想?
虽然5G标准尚未成型,但距离大家公认的商用化时间已不足5年(业界公认到2020年会实现5G的大规模部署)。为了抢占先机,参与标准制定,许多公司目前已提出了就5G的新兴算法和应用进行原型设计的需求,全球...
bitao1983_395643617 2015-10-15 09:39
(多图)时钟抖动和相噪及其测量方法
抖动测量一直被称为示波器测试测量的最高境界。传统最直观的抖动测量方法是利用余辉来查看波形的变化。后来演变为高等数学概率统计上的艰深问题,抖动测量结果准还是不准的问题就于是变得更加复杂。 时钟的特性可...
bitao1983_395643617 2015-06-27 22:49
你设计的PCB EMI达标了吗?
电子设备的电子信号和处理器的频率不断提升,电子系统已是一个包含多种元器件和许多分系统的复杂设备。高密和高速会令系统的辐射加重,而低压和高灵敏度 会使系统的抗扰度降低。因此,电磁干扰(EMI)实在是威胁...
bitao1983_395643617 2015-04-10 14:28
(多图) FPGA与ADC数字数据输出的接口及LVDS应用诀窍
现场可编程门阵列(FPGA)与模数转换器(ADC)输出的接口是一项常见的工程设计挑战。本文简要介绍各种接口协议和标准,并提供有关在高速数据转换器实现方案中使用LVDS的应用诀窍和技巧。 接口方式和标...
EE直播间
更多
我要评论
1
18
关闭 站长推荐上一条 /3 下一条