资讯动态

四人抢答器课程设计:D触发器锁存与倒计时计分硬件链路

发布时间:2026/10/26 15:11:32 来源:尧图企业网站定制
简介这份四人智力竞赛抢答器完整课程设计文档面向电子信息、自动化等专业需要完成课程设计或数字电路综合实验的学生。内容围绕抢答器、计时器、计分器三大模块展开涵盖总体方案比较与论证、单元模块设计、主要器件介绍、系统功能调试及总结体会并给出74373、14599、555定时器、减法计数器、十进制可逆计数器等器件的具体应用思路还涉及无线抢答的拓展方向。压缩包内为1个doc文档约857KB结构完整、章节清晰可直接作为课设报告参考或实验设计蓝本。目前已有4727人学习下载适合需要快速理清抢答器设计逻辑、对照调试各单元电路并完成报告撰写的读者。1. 四人抢答器课程设计从锁存第一信号到倒计时计分的完整硬件链路做过数电课程设计的人大多有个共识抢答器看着简单真动手焊出来能一次跑通的没几个。这份四人智力竞赛抢答器完整课程设计核心要解决的是一个很具体的问题——四位选手几乎同时按键时怎么准确锁住第一个有效信号同时把其他人的按键全部封死再用声光告诉全场谁抢到了。它面向的是正在做数电课设、需要一套可仿真可搭板的完整方案的人也适合想拿它当模电数电综合练手项目的同学。整套设计拆成抢答、计时、计分三个模块分别用 D 触发器、555 加 JK 减法计数器、74190 可逆计数器实现最后合成一个系统。下面按我实际拆解和复现的顺序把每个模块的选型理由、参数设置和容易翻车的地方讲清楚。2. 抢答模块D 触发器怎么锁住第一个按键并封死后来者抢答模块是整个设计里最需要想明白的部分。要求写得很直白能分辨第一个有效按键并且阻断后续信号。这句话翻译成电路语言就是——需要一个能记住“谁先来”的存储单元再加一套反馈逻辑把其他人的通道关掉。2.1 为什么选 D 触发器而不是 RS 触发器课程设计里给了两个方案。方案二用四个 RS 触发器加 74LS148 优先编码器最后用数码管显示抢答者编号。方案一用四个 D 触发器加或非门每个选手对应独立的声光指示。我选方案一的理由很实际RS 触发器存在约束条件R 和 S 同时有效时输出状态不确定虽然抢答场景下理论上不会同时触发但按键抖动或者走线干扰很容易制造出这种瞬态。D 触发器没有约束条件抗干扰性能强边沿触发方式也意味着它只在时钟跳变沿采样对毛刺的容忍度更高。具体型号用 74LS74一片里有两个 D 触发器四路抢答需要两片。它的真值表在正文里已经列了关键行是 CP 上升沿到来时 Q 输出等于 D 输入其余时间保持。这意味着只要把每个选手的按键信号接到对应 D 触发器的 CP 端D 端接高电平第一个上升沿一到那一路的 Q 就翻成高电平并锁住。2.2 封锁逻辑或非门怎么把其他三路掐掉光锁住自己不够还得让其他人按了也没反应。做法是把四路 D 触发器的 Q 输出送进一个或非门网络任何一路 Q 变高之后或非门输出翻转这个翻转信号接到其余三路 D 触发器的异步清零端低电平有效的那个引脚。一旦清零端被拉低那三路 D 触发器就被强制复位并保持在复位状态无论 CP 端怎么跳都不再响应。这里有个容易忽略的细节清零信号需要保持住不能是脉冲。因为或非门的输出直接连到清零端只要第一个 Q 维持高电平清零信号就一直在封锁就是持续的。主持人复位时把第一个 D 触发器也清零整个链路才释放。2.3 主持人控制三极管开关怎么实现“宣布开始前按键无效”主持人没宣布开始前抢答不能起作用。这个功能用三极管实现。NPN 三极管比如 2N3904的基极通过一个 10k 电阻接主持人开关集电极接 D 触发器的 CP 端发射极接地。主持人开关接通时基极被拉到低电平三极管截止CP 端相当于悬空或通过下拉电阻保持低电平按键信号传不过去。主持人断开开关基极通过电阻接高电平三极管饱和导通CP 端被拉到接近地电位按键产生的上升沿才能被 D 触发器识别。提示三极管这里当开关用不要纠结放大倍数。关键是保证饱和导通时集电极-发射极压降足够小截止时漏电流足够小。2N3904 在基极电流 1mA 左右就能饱和10k 基极电阻配 5V 电源刚好。2.4 声光指示的接法每路 D 触发器的 Q 输出同时驱动一个发光二极管和一个扬声器驱动电路。发光二极管串 1k 限流电阻接地Q 高电平就亮。扬声器不能直接接 Q 输出驱动电流不够中间加一级三极管放大或者用 555 构成的音频振荡器Q 高电平使能振荡器扬声器才响。正文里提到“声光伴随具体到每一位”意思就是四路各自独立谁抢到哪一路的灯亮、哪一路的喇叭响主持人一眼就能看出来。3. 倒计时模块555 脉冲源加 JK 减法计数器的参数怎么定计时器要求倒计数时间可预置归零时给信号停止抢答。这个模块拆成三块555 提供时钟脉冲JK 触发器构成减法计数器CD4511 加数码管负责显示。3.1 555 多谐振荡器的频率计算与元件选型555 接成多谐振荡器输出连续方波作为计数脉冲。频率公式是 f 1.44 / ((R1 2R2) × C)。正文电路图里 R1 标 0.6KR2 标 2.4KC 标 0.01uF代入算一下R1 2R2 600 4800 5400 欧姆乘以 0.01uF 等于 5.4×10^-51.44 除以这个数大概是 26.7kHz。这个频率太高了倒计时会跑得飞快。实际做的时候我一般把 C 换成 10uF 电解电容R1 取 1KR2 取 10K算下来 f ≈ 1.44 / ((1000 20000) × 10^-5) ≈ 6.9Hz差不多每秒 7 个脉冲倒计时读秒的节奏比较自然。注意555 的 5 脚控制电压端要接一个 0.01uF 电容到地否则比较器参考电压容易被电源噪声干扰计数脉冲会抖。这个电容正文图里画了但很容易在搭板时漏掉。3.2 三位 JK 减法计数器的级联方式三个 JK 触发器构成三位二进制减法计数器。每个触发器的 J、K 都接高电平悬空即高工作在翻转模式。级联的关键是前一级的 Q 输出接下一级的 CP 端。注意是 Q 不是 Q 非。因为 JK 触发器在 CP 下降沿翻转前一级从 0 变 1 时 Q 端产生上升沿从 1 变 0 时 Q 端产生下降沿。减法计数需要的是借位信号也就是前一级从 0 翻到 1 时二进制减法里 0 减 1 需要向高位借位Q 端的上升沿正好对应这个时刻。但 JK 触发器要求下降沿触发所以实际接法是前一级的 Q 非端接下一级 CP或者用 Q 端但确认触发器是上升沿触发型号。正文用的是 Q 端接 CP那触发器应该是下降沿触发前一级 Q 从 1 变 0 时产生下降沿对应减法借位。状态表正文给了000→111→110→101→100→011→010→001→000。从 000 开始第一个脉冲变 111相当于从 7 开始倒计。如果预置时间要可调就在计数器输出和译码器之间加预置数开关或者用可预置的减法计数器芯片替代 JK 触发器组。3.3 CD4511 译码驱动与归零信号提取CD4511 是 BCD 到七段译码驱动器输入 8421 码输出直接驱动共阴极数码管。JK 计数器的三个输出 Q2 Q1 Q0 接 CD4511 的 A B C 输入端D 端接地。当计数器状态为 000 时CD4511 输入 0000数码管显示 0。归零信号从哪来正文说“JK 触发器输出另接一个与非门与非门再接发光二极管”。三个 Q 输出接三输入与非门当 Q2Q1Q0 全为 0 时与非门输出高电平点亮发光二极管同时这个信号可以拿去封锁抢答模块或者触发扬声器报警。如果用的是 74LS10 三输入与非门注意输入悬空会被当成高电平不用的输入脚要接地或接 VCC不能悬着。4. 计分模块74190 可逆计数器怎么实现加减 10 分计分器从 100 分开始答对加 10答错扣 10。个位始终显示 0只有十位和百位参与变化。这个需求用两片 74190 级联实现。4.1 74190 的加减控制与预置数74190 是单时钟同步十进制可逆计数器U/D 引脚控制方向高电平减法低电平加法。预置数通过 LD 引脚和 P0-P3 输入设置。正文电路里 U1 负责百位预置为 1U2 负责十位预置为 0。个位不接计数器数码管直接接地显示 0。主持人控制加分减分用一个单刀双掷开关一端接高电平减分一端接低电平加分中间接 U/D 引脚。每按一次脉冲开关CLK 端收到一个上升沿计数器就加 1 或减 1。因为个位不参与十位每变化 1 就代表 10 分。4.2 十位到百位的进位处理74190 的 RCO 引脚是进位/借位输出。十位 U2 从 9 加到 0 时RCO 输出一个脉冲这个脉冲接到百位 U1 的 CLK 端百位就加 1。减法时类似十位从 0 减到 9RCO 输出借位脉冲百位减 1。正文提到“与 Q0Q2 相连的与门将接收低电平信号输入到管脚 11 使置数重新变为 0”这是利用 74190 的置数功能实现模 10 计数但 74190 本身是十进制计数器加到 9 再加 1 会自动回 0 并产生进位不需要额外与门。这里可能是正文描述有误实际搭板时按 74190 标准接法就行。4.3 个位显示为 0 的 D 触发器处理正文用了一个 D 触发器使个位显示 0。其实更简单的做法是个位数码管的输入端直接接地CD4511 输入 0000永远显示 0。D 触发器在这里的作用可能是做某种使能控制但从功能上看不是必须的。如果手头没有多余的 D 触发器个位数码管直接接 4511 或者用电阻拉低输入就行。5. 联调避坑从仿真到搭板最容易翻车的五个地方这个设计在仿真软件里跑通和实际搭板跑通是两回事。下面几条是我踩过的坑按现象、原因、解决三段来说。5.1 抢答后其他路还能触发现象第一个选手按下后灯亮了但第二个选手再按他的灯也亮封锁没生效。原因或非门输出到清零端的连线没接对或者清零端被其他信号拉高了。74LS74 的异步清零端是低电平有效如果悬空会被内部上拉保持高电平封锁信号进不去。解决检查或非门输出是否真的连到了其余三片 D 触发器的清零脚用万用表测清零脚电压抢答后应该接近 0V。如果用的是不同封装的 74 系列确认引脚定义一致。5.2 倒计时不走或者跳变现象555 输出有波形但计数器不翻或者数码管显示乱跳。原因555 输出频率太高计数器响应不过来或者 JK 触发器 CP 端接错接成了上升沿触发但信号是下降沿。解决先用示波器看 555 输出频率按前面算的改成几 Hz 级别。确认 JK 触发器型号的触发沿74LS112 是下降沿触发CP 端接前一级 Q 输出如果是上升沿触发的型号接 Q 非。5.3 计分器加减方向反了现象按加分键分数减了按减分键分数加了。原因74190 的 U/D 引脚电平逻辑搞反了。U/D 高电平是减法低电平是加法和直觉相反。解决把主持人开关的两端对调或者在心里记住“高减低下加”。搭板前先用万用表确认开关拨到加分端时 U/D 脚是低电平。5.4 数码管显示缺段或全亮现象数码管某些段不亮或者所有段同时亮。原因CD4511 的 LT 和 BI 引脚没接对。LT 是灯测试低电平有效接低电平时所有段全亮BI 是消隐低电平时数码管熄灭。正常工作时两个脚都要接高电平。解决把 LT 和 BI 通过 1k 电阻接 VCC不要悬空。共阴极数码管的公共端接地如果误用了共阳极数码管显示会完全相反。5.5 仿真软件里找不到元件现象在 ISIS 里搜 74190 或者 CD4511 找不到或者找到的模型引脚功能和实物不一致。原因仿真软件的元件库不完整有些型号只有特定版本才有。解决用功能相同的替代型号。74190 可以用 74LS190 替代CD4511 可以用 74LS47 加共阳极数码管替代逻辑功能一样只是数码管类型不同。替代后在仿真里重新验证一遍逻辑再搭板。6. 从仿真到实物我的验证流程和几个进阶改法把电路在仿真里跑通只是第一步真正搭板之前我习惯走一遍固定流程。先在 ISIS 里分模块验证抢答模块单独测用信号源模拟按键看 D 触发器输出和封锁信号计时模块单独测用示波器看 555 输出和计数器状态计分模块单独测手动按脉冲看数码管变化。三个模块都对了再连在一起连的时候注意电源和地的走线数字电路对电源噪声敏感每个芯片的 VCC 脚旁边并一个 0.1uF 去耦电容。实物搭板时按键抖动是最大的敌人。机械按键按下瞬间会产生几十毫秒的抖动D 触发器可能误判为多次触发。解决办法是在每个按键两端并一个 0.1uF 电容或者用 RS 触发器做硬件消抖。我一般两个都上电容消抖加软件延时确认双保险。进阶改法有两个方向。一是把 JK 减法计数器换成可预置的 74LS192倒计时时间可以用拨码开关直接设置不用改电路。二是无线抢答的拓展要求可以用 315MHz 或 433MHz 的无线收发模块替代有线按键发射端用编码芯片接收端解码后输出脉冲给 D 触发器。无线模块的响应延迟在毫秒级对抢答器来说够用但要注意四路同时发射时的同频干扰编码地址要设成不同值。从那以后我每次做数电课设都强制自己先分模块验证再联调绝不把没单独测过的模块直接拼在一起。这个习惯帮我省下了至少两次通宵查线的时间。希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑