您的位置:网站首页 > 电器维修资料网 > 正文 >
基于FPGA消除模块的研究与应用
来源: 日期:2013-12-7 10:01:58 人气:标签:
按键开关是电子设备人机交互的主要器件之一。按键大多是机械式开关结构,由于机械式开关的核心部件为弹性金属簧片,因而在开关切换的瞬间会在接触点出现来回弹跳的现象。对于灵敏度比较高的电路,这种弹跳现象引起的信号抖动会造成误动作而影响到系统的正确性。因此,我们需要设计按键弹跳消除电路来去除抖动.。
1.弹跳消除电路的原理和功能
按键开关的典型连线分为低电平有效和高电平有效,本文的是低电平有效。
机械开关的抖动存在三种情况:按下时有抖动,松开时也有抖动;按下时有抖动,松开时无抖动;按下时无抖动,松开时有抖动。机械开关的抖动波形、抖动次数、抖动时间都是随机的,并不是每次都会产生抖动。
不同开关的 长抖动时间也不同。抖动时间的长短和机械开关特性有关,一般为5ms到10ms。但是,某些开关的抖动时间长达20ms,甚至更长。所以,在具体设计中要具体分析,根据实际情况来调整设计。
弹跳现象以及弹跳消除如图1 所示,虽然只是按下按键一次后放掉,结果在按键信号稳定先后竟出现了多个段脉冲,如果将这样的信号直接送到计数器之类的时序电路,结果将可能发生计数超过一次以上的误动作,从而误以为键盘按了多次。因此,必须加上弹跳消除电路,除去短脉冲,避免误操作的发生。
2.按键弹跳消除模块的实现
为了使按键弹跳消除模块的更加简洁,并且移植性好,在此用计数器的方式实现消除按键抖动的功能。
2.1 计数器模值的计算
计数器模值的确定是按键弹跳消除效果的关键问题,如果值过大,即采样时间过长,就会漏掉正确的信号;如果值过小,采样时间过短,则会将毛刺误认为是输入信号。
计数器的模值n根据抖动信号的脉冲宽度和采样信号clk的周期大小决定。根据一般人按键的速度小于10hz(每秒小于10次),所以按键时间大于100ms,按占空比50%计算,按下的时间大于50ms。按这种约定,我们认为按下的时间小于50ms的为抖动信号,按下的时间大于50ms的是按键信号。即n=50ms/采样脉冲信号周期,这样就可以把按下的时间小于50ms的抖动信号滤掉。
在此,根据实验板提供的系统时钟来确定实际需要的模值。实验板提供的系统时钟为100mhz,通过分频后得到25mhz的时钟,50ms*25mhz得到count的模值为21’h1312d0。采用这个模值得到的消抖时间大约为50ms,符合要求。
- 1
- 2
- 3
- 下一页
【看看这篇文章在百度的收录情况】
相关文章
- 上一篇: 行推动变压器的含义及其作用
- 下一篇: 增量编译技术介绍