新闻

按键消抖电路瞬态设计及分析

作者:888扑克手机版 发布时间:2020-06-15 18:49 点击数:

  (1)在仪器键盘电路中,多个按键安装在仪器面板上,键盘的输出通过排线连接到主控板上,此时键盘导线寄生电感和寄生电容的存在,寄生电感寄生电容和排线电阻将组成二阶振荡系统,二阶振荡将形成负电平脉冲,而负电平脉冲很容易超出数字芯片的输入最大允许电平范围,导致数字芯片容易损坏。

  (2)按键闭合和断开时,电压信号下降沿非常陡峭,剧烈变化的电压信号将通过互容传递到相邻导线上。

  (2)消除信号的下冲,因为下冲电平超出了后续数字芯片的最大输入电平范围;

  常见的硬件消抖电路包括电容滤波消抖和触发器消抖。电容滤波消抖采用电阻和电容组成低通滤波器,具有电路结构简单可靠的优点,因此本文将重点阐述该消抖电路。

  图1为某仪器按键电路原理图,按键安装在仪器面板上,通过导线连接到主控板上,按键的一端接上拉电阻并连接后续电路,按键的另一端接地,当按键没有按下时,按键输出高电平,当按键按下 时,按键输出低电平。图2为加上滤波电容后的按键电路。

  图3为按键消抖电路的电路模型。图中R0为连接按键导线的电阻,L为导线为导线对地电容,Cf为滤波电容,Cp为按键后续电路的输入电容,Ri为按键后续电路的输入阻抗,R 为上拉电阻,VCC为电源电压,U为按键消抖电路的输出电压。

  当按键闭合时,其等效电路模型如图4所示。当按键断开时,其等效电路模型如图5所示。

  设某一时刻按键合上,在此之前按键断开,整个电路处于稳态,即各个电容和电感上没有电流流动。此时输出电压U =u0 =VCC ×R (R +Ri)。则根据图4整个电路可列出以下微分方程:

  式中:i0为L 所在支路的电流;C 为C0,Cf和 Cp的等效电容,C 为三者之和。

  设某一时刻按键断开,在此之前按键闭合,整个电路处于稳态,即各个电容和电感上没有电流流动。此时输出电压U=u0=VCC × Ri R0 (RRi +R0 Ri +RR0)。根据图5可列出以下微分方程:

  对式(5)进行拉普拉斯反变换便可得到按键断开电路处于稳态时按键闭合的输出电压u(t)的时域响应。

  式(6)的时域响应为电容充电的时域响应,其响应过程为单调上升,其上升时间为2.2T,充电时间常数T等于ReC,Re为Ri和R 的并联。

  T 越大上升时间越大,上升时间过大将影响按键的正常使用。按键按下一次的持续时间约为0.01~0.1 s,因此消抖电路将上升时间调整到500 s以内比较适合。

  现测得已连接到单片机输入引脚的按键电路其导线 ,导线 pF,在电路中使用的上拉电阻R 为10 k,单片机输入引脚输入阻抗Re为2 M,使用电源电压VCC为3.3 V,则不加滤波电容时,按键闭合和断开的瞬态响应分别如图6 和图7 所示,由图6 可见下冲峰值接近2 V,而使用单片机引脚的最大输入电压范围为-0.3 V~(VCC+0.3 V),该下冲电压远远超出该电平范围。

  按键消抖电路的设计主要是利用电容的平滑功能,将毛刺平滑掉,滤波电容越大,信号越平滑。但是电容的增大会导致上升时间过大,电容太小则无法消除毛刺。现针对一单片机按键电路为例进行阐述。图8为该电路未进行硬件消抖时使用衰减探头在示波器上观察到的毛刺。

  现测得该单片机按键电路寄生电感L 为30 nH,寄生电容C0+Cp为35 pF,导线 。查阅单片机数据手册,计算得到其输入引脚输入阻抗为2 M,上拉电阻R 为10 k。根据式(6)和式(7)可计算出未加滤波电容的按键电路在按键闭合时其二阶系统的为0.004 887,振荡频率为155.319 MHz。图6为在示波器上观察到的按键闭合瞬间的时域响应。由图可见最大的下冲幅度达到了-1.66 V,该电平远超出单片机的电压范围。

  根据式(9)可计算得到按键断开时充电时间常数为348.258 7 ns,信号上升时间为766.17 ns。图7为在示波器上观察到的按键断开瞬间时域响应。为消除按键抖动,滤波电容越大越好,但电容增大将增大信号的上升时间。为不影响按键电路的正常功能,需将上升时间控制。在0.5 ms以内。为此可得到当上拉电阻为10 k时滤波电容的最大值为22.85 nF,上拉电阻为1 k时滤波电容的最大值为227.38 nF。

  由于下冲持续时间较长,危害性也将增大。图9为R=1 k,滤波电容为227.38 nF时的按键闭合瞬间时域响应波形。图10为R=1 k,滤波电容为220 nF时在示波器上观察到的按键闭合瞬间时域响应波形。

  因此,单靠增加电容来进行滤波的方法是行不通的,由式(7)可知,增大R0可以显着增加,为此可以在按键导线上串接电阻。在最终的按键消抖电路设计中,串接电阻选为100 ,滤波电容为8.2 nF。此时 为26.117 7,彻底消除了振荡,此时的充电时间常数T 为81.94 s,上升时间为180.268 s。图11为整个按键消抖电路的按键闭合和按键断开瞬间的时域响应波形仿线为整个按键消抖电路的按键闭合和按键断开瞬间的实测时域响应波形。图13为一次按键按下实测完整波形。图14为最终的按键消抖电路。由图12可见,按键闭合时没有过冲,按键断开时上升时间小于0.5 ms。由图13可见,在按键按下和松开之间的过程中,抖动已被消除,而且完全不影响按键电路的正常功能。

  图11 消抖电路按键闭合和断开瞬间的时域响应波形仿线 消抖电路按键闭合和断开瞬间实测时域响应波形

  本文分析了软件消抖电路中存在的不足,指出了软件消抖存在输出信号下冲电平超出后续数字芯片输入电平范围容易危害数字芯片,提出了按键闭合时信号下降速度过快易引起容性串扰。针对软件消抖电路的不足,本文分析了硬件消抖电路,建立了数学模型,仿真并实测了按键消抖电路的时域响应。针对硬件消抖电路中仅使用滤波电容消除按键抖动的方法,通过仿真和实测阐述了该方法反而会导致下冲持续时间更长,对后续电路危害性大。

  针对该问题,本文分析计算了在按键导线中串接电阻以消除下冲,仿真并实测了整个硬件消抖电路的瞬时响应,实测了硬件消抖电路按键按下和释放整个过程的时域波形,消除了按键抖动和下冲。

  本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

  ; // { for(i=0;i100;i++) //此处消抖程序非常经典,怎么按都绝对不会产生抖动。

  状态机的按键检测思路2先回顾一下定义:状态机有如下性质按键状态机发生状态迁移的条件如何准确检测条件是否发生并进行状态迁移确保状态机能稳定地进行迁移按键消抖的原理:状态切换按键操作触发的时机先回顾一下定义:按键从未按下到按下,再到弹起,可以视为一个有4个状态的有限状态机。分别是未按下、前沿抖动、按下、后沿抖动。即按键只在这4个状态间进行迁移,而且是当条件满足时按一定的顺序进行迁移:未按下­­(条件1)­前沿抖动­­(条件2)­按下­­(条件3)­后沿抖动­­(条件4)­未按下当且仅当条件成立时,才进行

  最近一直在研究程序中怎么取消延时函数,经过一段时间的摸索,终于有所收获,随手写了个倒计时器,倒计时器在生活中很多地方都会用到,只要把电路稍加改进,就可以做成很实用的东西,程序仿真通过,等有时间做成实物,先把程序发上来分享一下。随便截了几张图。仿真界面:程序界面:源程序,写得比较粗糙,喜欢的可以共同研究一下

  ; 文件信息--------------------------------------------------------------------------------**文件名 : key.c**描 述 : 按键状态机**

  引言通常按键所用的开关都是机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上就稳定的接通,在断开时也不会一下子彻底断开,而是在闭合和断开的瞬间伴随了一连串的抖动,如图1所示。图1分析按键稳定闭合时间长短是由操作人员决定的,通常都会在 100ms 以上,刻意快速按的线ms 左右,很难再低了。抖动时间是由按键的机械特性决定的,一般都会在 10ms以内,为了确保程序对按键的一次闭合或者一次断开只响应一次,必须进行按键的消抖处理。方法一在绝大多数情况下,我们是用软件即程序来实现消抖的。最简单的消抖原理,就是当检测到按键状态变化后,先等待一个 10ms 左右的延时

  直播:TI SimpleLink MCU无线平台及软件介绍!丰富的提问礼在这里等你~

  数字电源驱动电源模块电池管理其他技术网络通信消费电子电源设计测试与保护逆变器控制器变压器电源百科电源习题与教程


888扑克手机版

@SHENZHEN ENERGY Corporation All Rights Reserved.

888扑克手机版