按键消抖电路原理单脉冲

单脉冲发生器通常用于 FPGA 开发。一些文章介绍了产生单脉冲的电路。产生的单脉冲的脉宽和相位不能与时钟同步,只能用在要求不严格的场合。笔者目前从事的课题,需要一个与时钟周期宽度相同、相位与时钟周期相同的键控单脉冲发生器。按键式单脉冲发生器需要按下按键才能产生单脉冲,但大部分采用FPGA芯片的开发板都提供高频时钟脉冲,按键时会出现抖动问题。为此,笔者专门设计了按键去抖电路来消除抖动,为产生单脉冲提供稳定的按键信号。

本文引用地址:

1 按键去抖电路原理

为了使按键去抖电路模块简单、便携性好,通过计数器来实现按键去抖功能。

计数器的模值n是根据抖动信号的脉冲宽度和采样脉冲信号CLK的周期确定的。计数模值 n = 延迟/脉冲信号采样周期。一般按键抖动时间为5~10ms,甚至更长。笔者使用的开发板提供的系统时钟为24MHz。根据公式,当计数器取模值为20位,计数达到219,即h8 0000时,延时约22ms。在计数期间,认为是按键的抖动信号,不进行采样;计数器停止计数用触发器按键消抖电路,采样信号被认为是稳定的按键信号。这样可以滤除按键时间小于22ms的抖动信号。

引入一个采样脉冲信号CLK,输入按键信号KEY。当 KEY 输入为低电平时,计数器开始向上计数。当计数到h8 0000,即计数器的最高位Q19为1时,计数器停止计数,输出Q19作为按键的稳定输出。在计数期间,Q19的输出为0;KEY 输入为高电平。电平,计数器清零,Q19输出为0。因此,电路需要按住按键22ms才能得到有效信号。

2 键控单脉冲发生器电路原理

键控单脉冲发生器利用上述电路解决键控去抖问题用触发器按键消抖电路,得到稳定的信号。使用两个 D 触发器和一个与门生成一个单脉冲,如图 1 所示。

图片[1]-按键消抖电路原理单脉冲-4747i站长资讯

D触发器U2A在接收到稳定信号D1=1后被触发。触发器 U2A 中的 Q1 端子得到一个与 CLK 同步的正向脉冲。将Q1输出到D触发器U3A得到比Q1延迟一个时钟周期的正向脉冲,将Q2的输出反相得到负向脉冲。Q1 和 Qn2 的输出用作与门的输入,将输出脉冲宽度为原始时钟周期两倍的单脉冲。

为了使输出单脉冲的脉宽等于时钟周期,相位与时钟周期相同,对图1中的电路设计进行了改进,如图2所示。

图片[2]-按键消抖电路原理单脉冲-4747i站长资讯

图片[3]-按键消抖电路原理单脉冲-4747i站长资讯

文章来源:http://www.eepw.com.cn/article/191840.htm

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享