基于去抖动的JK触发器实验设计
2016-03-15孙玲姣黄勇向丽萍
孙玲姣 黄勇 向丽萍
摘 要: JK触发器是一种功能完善且应用很广泛的触发器。在实验中,JK触发器实验虽然用Protues软件仿真能顺利完成,但是在实验箱上连接电路却不能得到预期的正确结果,这是开关抖动造成的。在此引入一种改进的电路:在时钟信号产生电路中引入由基本RS锁存器构成的去抖动电路,其可以有效地消除触点抖动造成的实验结果错误和误触发,得到与理论完全一致的结果。
关键词: Protues 软件; JK触发器; 时钟信号; 去抖动电路
中图分类号: TN710?34 文献标识码: A 文章编号: 1004?373X(2016)04?0128?04
Abstract: The JK flip?flop is a trigger with perfect function and wide application. The experiment of JK flip?flop can be completed by Protues software simulation, but to connect the circuit on experimental box cant obtain a correct result because of the switch bouncing. An improved circuit is introduced, in which the debouncing circuit composed of basic RS latch is brought in the clock signal generating circuit. This circuit can effectively eliminate the wrong experimental results and false triggering caused by contactor bouncing. The experimental result is completely in accord with the theory value.
Keywords: Protues software; JK flip?flop; clock signal; debouncing circuit
电子技术对电子、电气等专业而言是一门实践性较强的专业基础课,因此是一门重要课程[1]。为了使学生能更好地掌握该门课程,在电子技术实验教学过程中通常采用软件仿真或在硬件实验设备上连接电路进行实验。仿真软件主要选用Protues[2],因为与Protel等仿真软件相比较Protues具有较突出的优点,比如:对计算机配置要求不高,学校的计算机完全可以满足要求;电路仿真完全是交互的,支持数字电路和模拟电路混合仿真,对于单片机的程序也支持仿真,有各种虚拟仪器,能实现可视化;支持与Keil C软件联调等[3]。硬件实验设备采用DJ?SD6电子技术实验箱,后面文中所说实验箱均指这种设备。
在电子技术课程的实验项目中,多数实验项目用Protues仿真和硬件仿真都能顺利完成,但是极少数实验项目却不能,比如触发器RS,JK,T,D这个实验项目。这个实验项目属于验证性的实验,虽然用软件仿真能顺利完成,但是用硬件电路却不能得到预期的正确结果。出现这种情况的原因主要是因为在用逻辑电平输入开关产生时序信号时,在信号的边沿处出现抖动。在RS,JK,T,D这几种触发器中[4?7],JK触发器是一种功能完善,应用很广泛的双稳态触发器,由它可以构成具有固定功能的集成电路。因此本文将以JK触发器为例逐步介绍其实验原理、通常采用的实验线路和改进的去抖动实验电路。
1 实验项目原理
JK触发器是数字电路触发器中的一种电路单元[8],其特性方程如下公式(1):
[Qn+1=JQn+KQn] (1)
式中:J和K 为数据输入端,是触发器状态更新的依据;[Qn]和[Qn+1]分别为电路的现态和次态。在各类集成触发器中,JK触发器的功能是最齐全的,它具有置0、置1、保持和翻转等功能,其功能表可总结如表1所示。其中[SD]为直接置位端;[CD]为直接复位端;[CP]为时钟信号端;在表1中的符号“↓”表示时钟的下降沿;表1中的“×”表示无关项,既表示可以取高电平“H”对应的逻辑值“1”,也可以取低电平“L”对应的逻辑值“0”。在实际的电路中,JK触发器不仅有很强的通用性,而且能灵活地转换为其他类型的触发器[9],比如:由JK触发器可以构成D触发器、T触发器和T′触发器等,另外还常用于分频电路中产生分频信号[10]。
2 常用的实验线路及结果问题分析
2.1 常用的实验线路
集成JK触发器有TTL系列和CMOS系列芯片,TTL系列中有74LS73,74LS76,74LS103,74LS112和74LS114等,CMOS系列中有7HC72,74HC76,74HC103,74HC112和CD4027等。本文中采用芯片74LS112。74LS112是一款对时钟信号的脉冲下降沿触发的双JK边沿触发器芯片。在触发器实验中,为了在实验箱上验证74LS112是下降沿触发的双JK触发器,通常采用逻辑电平输入开关来得到一个上升沿或下降沿给时钟信号端,即将逻辑电平输入开关从“H”拨到“L”瞬间获得一个下降沿“↓”,将逻辑电平输入开关从“L”拨到“H”瞬间获得一个上升沿“↑”。为了便于观察以及结合前面的实验原理,具体的实验线路通常设计如图1所示。图1中的SWCP是为JK触发器时钟信号端提供信号的逻辑电平输入开关,逻辑电平输入开关SWS和SWR分别接JK触发器的直接置位端[SD]和直接复位端[CD],逻辑电平输入开关SW1和SW2分别接JK触发器的数据输入端J和K,发光二极管D1和D2分别接触发器的输出端[Q]和[Q],当相应的发光二极管被点亮时,表示对应的端子输出高电平,反之,输出为低电平。
2.2 实验结果问题分析
按照图1用Protues仿真时,可以方便地通过SW1,SW2,SWS,SWR改变J,K,[SD],[CD]的逻辑值,当开关拨在上方时,它们取逻辑值1,拨在下方时,逻辑值取0;通过开关SWCP改变时钟信号,将开关SWCP由上拨下瞬间产生有效下降触发沿“↓”,由下拨上产生无效上升触发沿“↑”。
实验内容主要分为两部分:
(1) JK触发器的直接置位、直接复位功能测试
将[SD]端、[CD]端分别按表1中的第2行和第3行的取值组合拨好开关,将J,K,[CP]端的开关随意拨动,观察Q端显示的高低电平,比较发现仿真结果和表1中对应的结果一致。并且可以看出JK触发器的输出状态完全决定于[SD]端和[CD]的取值,而不受J,K,[CP]的影响。
(2) JK触发器的逻辑功能测试
从表1的第四行开始,将[SD]端、[CD]端都拨到高电平的位置,即[SD=1]和[CD=1]。按表1的要求改变[CP],J,K的状态,观察Qn及Qn+1的显示。仿真时,须在时钟信号的下降沿来之前将[CP]、J,K和Qn的状态准备好, 具体操作为:先将[CP]端拨在高电平位置(为产生下降沿做准备),再将J,K按表1拨好,接着通过[SD]端和[CD]端的直接置位和直接复位功能将现态Qn在Q端置为相应的状态,再将[SD]端和[CD]端都还原到高电平的位置,最后将[CP]从高电平位置往低电平拨,这时候再观察Q端的输出即为次态Qn+1的状态。观察看出仿真结果和表1中对应结果一致。在时钟信号的上升沿来之前将[CP],J,K和Qn的状态准备好,先将[CP]端拨在低电平位置(为产生上升沿做准备),J,K和Qn的状态按前面的步骤准备好,最后将[CP]从低电平位置往高电平拨,再观察Q端的输出可以看出次态Qn+1的状态都没有改变。这也可以看出74LS112是下降沿触发的JK触发器。
但是在实验箱上操作时,会碰到两方面的问题而得不到正确的结果。这两方面的问题分别为:一是当JK触发器直接置位端[SD=1]、直接复位端[CD=1,]J=1,K=1时,用逻辑电平输入开关产生一个有效的下降沿给时钟输入端,触发器的输出端通常会出现比正常亮度暗的一闪的现象,而输出端的状态并没有发生翻转;二是边沿型触发器在非有效边沿常会出现误触发的情况,即在时钟为上升沿时,也会使触发器的输出端状态改变。而造成用实验箱操作时出现的这两方面问题的原因是逻辑电平开关SWCP在往上拨或往下拨的瞬间,触点由于机械弹性而在短时间内出现多次接通和断开,即抖动现象。为了避免开关抖动对实验结果的影响,虽然可以用单脉冲信号,但不能让学生更好地了解去开关抖动的原理,掌握去抖动电路的具体设计及应用。因此本文后面将介绍对实验电路进行的改进。
3 去抖动的JK触发器电路
通过前面介绍可知:在实验箱上不能验证出表1的结果的原因是图1中的开关SWCP在拨动时在时钟信号端有抖动。为了防止开关抖动对电路的影响,本文在时钟产生电路中引入了由基本RS锁存器构成的去抖动电路,它是利用基本RS锁存器的保持功能消除开关触点振动造成的影响,电路如图2左边所示。在图2中,去抖动的基本RS锁存器主要是由两个电阻、一个逻辑电平输入开关和芯片74LS00中的两个与非门构成。
基本RS锁存器的工作过程为:当开关SWCP由上拨下的过程中,活动端脱离上端悬空时,与非门U1的输入端1为1,输入端2为0,U1的输出仍然保持为1;当活动端和下端第一次碰触时,与非门U2的输入端2为0,U2输出为1,此时U1的两个输入端均为1,U1输出立即由1翻转为0。此后,即使触点抖动造成U2的输入端2出现1,0的跳变也不会改变U1的输出,这样时钟信号形成一个稳定的下降沿。根据电路的对称性,开关SWCP由下拨上,在时钟信号端可以形成一个稳定的上升沿。这样就消除了因开关抖动造成的误触发和错误结果。以上过程可总结如表2所示,其中将U1的输入端1标为R,U2的输入端2标为S,U1的输出端标为[QU1]。
当开关SWCP由上拨下时,在时钟信号端形成一个稳定的下降沿,JK触发器的输出发生翻转,发光二极管D1由亮转熄灭,发光二极管D2由熄灭转亮,如图3(a)所示;当开关SWCP由下拨上时,在时钟信号端可以形成一个稳定的上升沿,因上升沿不是有效的触发沿,所以JK触发器的输出不变,发光二极管D1仍然熄灭,发光二极管D2仍然为亮,如图3(b)所示;接着又将开关SWCP由上拨下时,在时钟信号端又形成一个稳定的下降沿,JK触发器的输出又发生翻转,发光二极管D1由熄灭转亮,发光二极管D2由亮转熄灭,如图3(c)所示。通过图3(a)和图3(c),可以看出仿真结果验证了表1中JK触发器的翻转功能,同时通过图3(a)、图3(b)和图3(c)验证了74LS112是时钟下降沿触发的触发器。
4 结 语
在JK触发器电路中,采用在时钟产生电路中引入由基本RS锁存器构成的去抖动电路,可以有效地消除由于触点抖动造成的实验结果的错误和误触发。让学生更好地了解触发器的概念和开关抖动对实验结果的影响,掌握触发器在实际电路中的应用及如何消除抖动的影响。
参考文献
[1] 唐莺,翁飞兵,单庆晓.电子技术基础课程改革的实践[J].兰州石化职业技术学院学报,2006,29(2):152?154.
[2] 刘建海,方晓群.Protues仿真软件在电子实训课程中的应用[J].电子制作,2014(6):115.
[3] 陈珏晓,马慧彬,史庆武,等.基于Proteus和Keil软件虚拟仿真技术在单片机系列课程中的研究应用[J].计算机光盘软件与应用,2012(21):224?225.
[4] 吴训威,陈豪.基于触发行为的J、K激励函数的最小化技术[J].浙江大学学报(理学版),2004,31(2):163?166.
[5] 赵敏笑,余红娟,陈偕雄,等.基于低功耗双边沿JK触发器的异步时序电路设计[J].浙江大学学报(理学版),2005,32(1):45?48.
[6] 肖燕.基于CMOS的JK触发器的设计[J].湖南农机,2010,37(1):15?17.
[7] 马敬敏.基本RS触发器工作状态的Multisim仿真[J].电子设计工程,2011,19(17):24?26.
[8] 朱小军,岳建斌.数字电路中各种常见触发器动作特点研究[J].科技广场,2005(6):127?128.
[9] 康华光,周寿彬,秦臻.电子技术基础(数字部分)[M].5版.北京:高等教育出版社,2006:205?231.
[10] 邵文进.五路灯光控制器电路的制作[J].电子制作,2014(7):13?14.