简介:这份《数电》4.触发器及其应用文档,是一份面向数字电子技术课程的实验指导,适合高校电子类学生、实验课教师及自学者对照练习,重点解决触发器逻辑功能理解与基本时序电路设计问题。文档依次讲解基本RS、JK、D、T四种触发器的置位、复位、翻转和保持特性,并列出74LS00、74LS112、74LS74等芯片的引脚接法与测试表,方便边看边在数字电路实验箱上操作。资源为单个docx文件,约334KB,集中包含实验目的、设备清单、测试步骤、思考题和实验收获,并给出了乒乓球练习电路的双D触发器设计思路,可帮助读者掌握上升沿触发、时钟控制以及JK触发器转D触发器的门电路实现方法。已有152人学习,整体结构清晰,既适合实验前预读,也可用于课后复习与设计参考,能帮助学习者将触发器理论迁移到实际电路调试中。
1. 从74LS00到D触发器,数电实验里最值得反复拆的一章
有人把数字电路实验当成“插线—看灯—填表”三件事,做完就忘。但触发器及其应用这个实验不建议这么糊弄过去,因为RS、JK、D、T四种触发器的差异,几乎全部落在“输出到底在什么时刻改变”这一句上。看教材上的特征方程看不出门道,接上74LS00、74LS112、74LS74三个芯片,用逻辑电平开关和单脉冲按钮逐行验证,才能把“电平锁存”和“边沿触发”这两类行为彻底分清楚。这里以一次完整的数电实验为线索,从门级RS触发器讲起,推到JK、D触发器的芯片测试,最后用双D触发器搭出一个乒乓球练习电路,并给出验证和排错方法。无论你是在做课程设计,还是准备面试时被问到建立时间和保持时间,这一套实验理解都值得留下。
2. 交叉耦合与非门,先把RS触发器的约束条件读透
想搞懂触发器,不能直接从芯片手册开始,要从门级开始。第一个被测对象不是专用的RS触发器集成电路,而是从74LS00里抽出两个与非门,让输出交叉接到对方输入,再接成最基本的RS触发器。后面JK、D、T的全部行为,都能从这一句“交叉耦合”里推出来。
2.1 为什么拿74LS00搭RS触发器
74LS00是四组二输入与非门,在实验箱和面包板上最常见。用它搭RS触发器的意义在于,能亲眼看到“两个门互为反馈”的形成过程,而不是拿一颗集成好的锁存器直接测。接线时,74LS00的14脚接电源正,7脚接地,两个与非门U1A和U1B按下面关系连接:
# 74LS00 基本RS触发器接线示意 U1A: pin1 = S输入, pin2 = Q', pin3 = Q输出 U1B: pin4 = R输入, pin5 = Q, pin6 = Q'输出 # Q和Q'必须交叉反馈到对方门的输入,否则接成两个反相器这段接线里,最关键的是pin2和pin5的交叉反馈。反馈一旦接反,S和R再怎么拨,输出也不会有锁存行为。我通常建议接完先不动输入,把两个逻辑开关都拨到高电平,看LED能否维持一个稳定的状态,再开始逐行测真值表。这样等于先验证了反馈环路完整,后面测出来的数据才可信。
2.2 逐行测表3-5,看“保持”是怎么生成的
按表3-5给出的组合,把S、R接到逻辑电平开关,Q和Q'接到LED电平指示,逐行按下开关并记录。实验记录对应的基本关系可以归纳成下面这样:
| S | R | Q | Q' | 行为说明 |
|---|---|---|---|---|
| 0 | 1 | 0 | 1 | 复位,Q被拉到低 |
| 1 | 1 | 保持前一状态 | 保持前一状态 | 保持 |
| 1 | 0 | 1 | 0 | 置位,Q被拉到高 |
| 1 | 1 | 保持前一状态 | 保持前一状态 | 保持 |
| 0 | 0 | 1 | 1 | 禁止状态,不代表有效逻辑 |
原始记录里会出现两行S=R=1而Q分别为0和1的情况,这恰好说明当时保持的是各自前一行的输出,并不是S=R=1本身改变了Q。为什么S=R=1时输出不动?看反馈:当前Q=0、Q'=1时,S=1进入U1A的pin1,pin2已经是1,与非门输出Q=0;这个0反馈到U1B的pin5,pin4=1,所以Q'=1不变。环路里每个门的输出都由另一个门的输出支撑,拨动S或R单独一个也改变不了环路结构。所谓锁存,就是这个互相支撑的稳定点。
2.3 禁止状态不是报错,而是设计约束
从这张表能读出一条硬约束:对于由与非门搭出的RS触发器,S和R同时为0是禁止的。虽然最后一行测出Q=1、Q'=1,但那是两个与非门同时被关断时出现的临时状态,两个门的延迟略有差异,输入一旦松开,输出跳到哪个方向完全随机;有的实验箱上甚至能看到LED发暗或闪烁,说明输出没有被真正拉到电源轨。工程上把这个输入组合叫作非法状态,设计时序电路时要用编码规则避开。市面上也有把“S和R同时有效”定义为明确复位的复位优先RS触发器,它把不定态转换成了确定输出,但失去的是RS触发器的对称性。做完门级实验再对比一下这两种做法,会很清楚“约束”和“确定”是两个不同的设计取舍。
3. 边沿JK触发器:异步置位复位端和单脉冲流程一起抓
RS触发器解决不了“两个输入端同时有效”的问题,JK触发器给出了答案:J和K同时为1时输出翻转,把原本的禁止组合变成了合法动作。但JK触发器从电平触发变成边沿触发,测试方法也必须跟着变,否则按电平那套思路操作,很难稳定复现结果。
3.1 先测74LS112的异步置位复位端,别急着测JK
74LS112是双JK边沿触发器,封装里有独立的异步置位端SD和复位端CD。异步的意思是不受时钟约束,电平一到就直接改写Q。实验第一步不是测J、K,而是先确认SD和CD。因为后面每一行测试都要用SD/CD把触发器预置到已知状态,再取消异步控制,让J、K接管;如果一开始不知道SD和CD哪个有效,后面会把逻辑开关状态误当成JK输入来读。
测试时把SD、CD、J、K、CLK都接逻辑电平开关,Q和Q'接LED。按表3-6逐行验证SD和CD对Q的优先级,表中用“×”表示无关项,意思是那一行CLK给什么都行,异步端根本不看时钟。这里有个容易漏掉的细节:74LS112的SD和CD通常按低电平有效设计,接高电平才是“不起作用”的状态,实验前最好用万用表确认所在实验箱的逻辑开关在高档位时确实输出高电平。
3.2 按表3-7测JK功能,单脉冲流程必须固化
正式测逻辑功能时,CP接实验箱的单脉冲下降沿触发输出,J、K、SD、CD接逻辑开关,Q接LED。每一行的操作顺序要固定,我一般按下面这个流程走:
# 74LS112 JK触发器功能测试流程 预置: 用SD/CD把Qn拨到目标状态 释放: SD=1, CD=1 # 让异步端失效,不再干扰时钟边沿 设值: 按表3-7设定J和K 触发: 按一次单脉冲按钮 # 74LS112在CP下降沿采样输入 读取: 记录LED上的Qn+1这里的核心是“先预置、后释放、再触发”。预置是为了让每次测试都从已知的现态出发,否则测到保持那一行时,看不到输出没变。释放步骤最容易被跳过,一旦漏掉,SD或CD还拉着输出,J和K怎么设都没用。单脉冲按钮每按一次只产生一个完整的电平变化,避免连续时钟带来的多次翻转,逐行记录才有意义。
按表3-7测完,行为归纳如下:
| J | K | Qn+1 |
|---|---|---|
| 0 | 0 | Qn,保持 |
| 1 | 0 | 1,置位 |
| 0 | 1 | 0,复位 |
| 1 | 1 | 非Qn,翻转 |
J=K=1时输出翻转,是JK触发器区别于RS触发器的核心特征。如果把这个翻转特性单独拿出来,强制T输入端恒为1,JK触发器就等价于T触发器,可以直接用来做二分频和计数器。
3.3 JK转D的最短路径:一个非门
实验思考题里有一道经典题:如何用少量门电路把JK触发器改成D触发器。标准做法是J接D,K端前加一个非门再接D。从特征方程上解释:JK触发器的次态方程是Qn+1=J·Qn'+K'·Qn,令J=D、K=D'后,代入得到Qn+1=D·Qn'+D·Qn=D,无论Qn是0还是1,次态都只取决于D,只是要等到时钟边沿到来才被采样。在实验箱上,常见做法是拿74LS04非门,或者把74LS00里一个与非门两个输入短接当作反相器使用,放在D和K之间。需要注意,非门会引入一级门延迟,示波器上看D和D'之间存在纳秒级相位差;实验箱这种慢速信号下不用管它,但在高速PCB和FPGA设计里,这种反馈路径上的延迟不对称会影响时序收敛。
4. D触发器应用:把乒乓球练习电路搭出来
从RS到JK再到D,触发器的行为变得越来越“规整”,D触发器的次态方程只有一个变量:Qn+1=D。这也让它在寄存器和数据通路上大量使用。乒乓球练习电路这个应用,正好能验证对D触发器边沿特性和时钟选通逻辑的理解。
4.1 先测74LS74的D触发器和异步端
74LS74内含两个带置位和复位的D触发器,和74LS112最大的区别是边沿方向:74LS74在CP上升沿采样,74LS112是下降沿。实验里先测D触发器的置位复位端,再测逻辑功能,方法跟JK触发器类似,只是把J、K换成D。最容易做的一个验证是二分频:把Q'反馈回D,CLK接连续脉冲,Q端输出是时钟频率的一半,占空比50%。如果反馈接错,输出会恒为高或恒为低,不会产生翻转效果。这个技巧后面也直接服务于乒乓球电路的时钟控制理解。
建乒乓球电路前,还要注意74LS74的SD和RD同样是低电平有效,预置初始状态时用它们把两个D触发器设成“一高一低”,之后同时置为高电平释放。如果释放后LED状态变了,说明异步端的电平没有拨到位,要先处理这个问题再往下走。
4.2 乒乓球电路的设计思路和控制逻辑
设计要求是模拟两名运动员来回击球,用双D触发器74LS74实现。两个触发器的输出QA、QB可以分别表示球在A侧还是B侧。关键文档里写得很简练:错误逻辑要用到“U3触发器CLK=CLK_A·Q_B + CLK_B·Q_A”。实际理解它,最直观的方式是把时钟选通看成“球权互锁”:
// 乒乓球电路时钟控制逻辑示意 assign clk_A = btn_A & QB; // 只有球在B侧时,A侧按钮才能把球接过来 assign clk_B = btn_B & QA; // 只有球在A侧时,B侧按钮才有效D输入端常见接法是交叉到对方输出:D_A=QB,D_B=QA。这样当时钟有效时,新状态等于对方旧状态,LED上的“球”会在两侧之间移动。两个时钟输入各自被对方Q端封锁,从机制上避免一侧反复自触发。
搭完电路先不要急着“打球”,先在静止状态下预置QA=1、QB=0,按一下A侧按钮,观察LED是否仍然保持A侧亮;再按B侧按钮,看球权是否转移到B侧。如果出现两个LED同时亮,通常不是芯片坏了,而是D端交叉反馈接成了直通,比如误把D_A接到QA上。这时把D输入短接到固定电平逐一确认,比反复拆线重插更快。
4.3 从逻辑表达式到实验箱实物的转换
实验箱上没有Verilog解释器,需要按逻辑表达式把独立的与门和非门搭出来。74LS00里剩的与非门可以组合成与门:先把CLK_A和QB接入与非门得到反相结果,再接一个与非门反相一次,就能得到CLK_A·QB。计算按钮脉冲宽度时,要保证CLK端的高电平宽度大于D触发器的建立时间要求。74LS74的建立时间在几十纳秒量级,手工按键的脉宽远远超过它,所以直接连接就能稳定工作。如果换成高速时钟源,比如信号发生器输出几兆赫兹脉冲,就要检查按钮或门电路带来的毛刺,这时可以加一个RC滤波器或改用芯片内部的时钟管理单元。
5. 验证与收尾:从二分频到实验箱排错
这一章讲两个马上能用的验证方法,一是用二分频确认D触发器工作正常,二是异常数据出现时按什么顺序排查。
5.1 把D触发器改成二分频器验证时钟边沿
先做最简单的验证:把74LS74的Q'接到D端,CLK接实验箱的连续脉冲输出,用示波器同时看CLK和Q。正常情况下Q的频率是CLK的一半,并且正好在每个上升沿翻转一次。这里有个技巧:如果只看时钟不看边沿方向,很容易把上升沿触发和下降沿触发搞混。可以把CLK接到下降沿触发的74LS112上做同样连接,前后对比,两个芯片的翻转时刻会错开半个周期。这个对比过程能直观解释“上升沿采样”意味着什么,以后看芯片手册里“正边沿触发”“负边沿触发”就不会再混淆。
5.2 实验数据异常的排查顺序
触发器实验最磨人的是“灯全亮”或“灯全灭”。我的排查顺序固定为四个动作:先检查电源和地,再断开所有J/K/D输入,单独测芯片的逻辑功能,然后查反馈连接,最后才考虑芯片损坏。大多数问题的根因是跳线接触不良或逻辑开关档位没拨到位。实验箱上这类开关用久了会有氧化,表现为同一档位偶尔给出错误电平,遇到数据跳变先去换一个开关位验证,能省下不少时间。
5.3 清理实验箱时的最后一个动作
拔线之前,先把所有逻辑电平开关拨到统一位置,比如全部置低,再关闭实验箱电源。这样做可以避免电平悬空,防止带电拔插时把74LS系列芯片的输入端打坏。把跳线按长短分类放回原位,然后在记录表上注明本次实验用过的芯片引脚编号,方便下次直接对照。
本文还有配套的精品资源,点击获取