本实用新型涉及电路领域,尤其涉及一种消抖动电路。
背景技术:
消抖动(Debounce)电路,就是常说的去抖滤波电路,主要用在芯片的 PAD输入信号,或者模拟电路输出给数字电路的信号上。当机械开关连接时,一旦按下按键常常会出现几次断续的通、断现象。由于时钟信号变化的比按键抖动更快,因为会把错误的信号锁存在寄存器中,这在时序电路中是非常严重的问题。因此,需要消抖电路来消除按键的抖动。去抖动电路用来消除这种产生断续接触的纹波信号,在其输出端提供无扰动的转换。
传统的Debounce电路通常是由数字逻辑构成,滤掉的毛刺宽度是时钟周期的整数倍。图1给出了一种简单的去抖动电路,该电路包括一个电阻和一个电容。该去抖动电路是一个简单的RC滤波电路,该RC滤波电路将改变输入信号的脉冲宽度;造成当输入端有很多毛刺连续出现时,最后输出端有毛刺无法滤除。
技术实现要素:
为了解决现有技术所存在的缺陷,本实用新型实施例提供一种消抖动电路,该消抖动电路不会改变输入信号的脉冲宽度,并且能滤除多个连续毛刺,无论是正毛刺还是负毛刺。
本实用新型提供一种消抖动电路,所述消抖动电路包括多级时延电路、 RS触发器和逻辑电路,所述消抖动电路的输出端采用RS触发器;在所述消抖动电路中,初始信号A通过两个级联的延时电路和非门得到信号B,信号B通过一个延时电路和两个级联的非门得到信号C,B信号通过三个级联的延时电路和非门组成的模块,最后通过一个非门得到信号D,信号A、 B、C、D通过一个与非门后再通过一个非门得到信号E,信号A、B、C、 D通过一个或非门得到信号F,信号E、F通过一个由两个或非门级联反馈组成的且由SET信号控制其状态的RS触发器后,再通过一个非门输出OUT 信号。
进一步,所述多级时延电路调整滤波宽度。
进一步,所述滤波宽度为所述多级时延电路的所有时延单元电路的延时时间之和。
进一步,所述时延单元电路有多种实现方式。
进一步,所述时延单元电路包括四个滤波电容、两个非门和一个施密特电路。
进一步,所述施密特电路有多种实现方式。
基于上述技术方案,本实用新型的实施例可以实现:不改变输入信号的脉冲宽度,并且能滤除输入信号中的多个连续毛刺,无论是正毛刺还是负毛刺。
附图说明
图1是现有技术中的消抖动电路的结构示意图;
图2是本实用新型实施例提供的消抖动电路结构图;
图3是本实用新型实施例提供的消抖动电路对应的时序图;
图4是本实用新型实施例提供的消抖动电路中时延电路结构图;
图5是本实用新型实施例提供的消抖动电路中施密特电路结构图。
具体实施方式
为了使本实用新型的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本实用新型进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本实用新型,并不用于限定本实用新型。此外,下面所描述的本实用新型各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
请参考图2,本实用新型提供的消抖动电路由多级delay电路和RS触发器及逻辑电路构成。该消抖动电路滤除的毛刺宽度可由delay电路的延时时间进行调整,滤波宽度是所有delay单元电路的延时时间之和。因此,可以通过设定时延单元电路的级数来设定该消抖动电路的滤波宽度。
该消抖动电路不会改变输入信号的脉冲宽度,当输入信号中有多个毛刺连续出现时,如果信号毛刺宽度小于消抖动电路设定的滤波宽度,不管连续出现多少个毛刺,所有的信号毛刺将不会通过。并且无论是正脉冲毛刺还是负脉冲毛刺,该消抖动电路都会将其滤除。该消抖动电路的输出端采用RS触发器,以增强去抖动作用。另外该消抖动电路正常工作时,SET为低电平,当SET 为高电平时,输出将一直为高。
本实用新型的消抖动电路对应的时序电路图如图3所示,输出信号OUT 并不会改变输入信号A的脉冲宽度,并且信号A有一个正或者负脉冲毛刺,且小于电路滤波宽度,将被滤除。当信号A有连续的毛刺出现时,毛刺也无法通过本电路,最后在输出端无毛刺出现。
本实用新型的消抖动电路中的时延单元电路有多种实现方式,其中一种实现方式如图4所示,包括四个滤波电容、两个非门和一个施密特电路。延时电路不管是对上升沿还是下降沿都能延时,并且为增加去抖动效果,最后一级输出采用施密特电路。所述施密特电路也有很多实现方式,其中一种实现方式如图5所示。
基于上述技术方案,本实用新型的实施例可以实现:不改变输入信号的脉冲宽度,并且能滤除输入信号中的多个连续毛刺,无论是正毛刺还是负毛刺。
以上所述仅为本实用新型的实施方式,并非用于限定本实用新型的保护范围。凡在本实用新型的精神和原则之内所作的任何修改、等同替换、改进、扩展等,均包含在本实用新型的保护范围。