
1. 为什么要用74LS74做二分频需求与方案选型1.1 二分频器到底解决什么问题先说说二分频是什么给电路输入端一个方波信号输出端得到一个频率正好减半的方波。比如输入 1kHz 的方波输出就是 500Hz输入 10MHz输出就是 5MHz。这个“频率减半”的操作在数字电路里太常用了——时钟分频、秒脉冲产生、计数器设计、音频电路里的方波变换、频率合成器全都要用到它。你可能觉得“频率减半”听起来很简单但实际上一个从零开始搭的分频电路牵扯到触发器原理、时序逻辑、电平匹配、信号完整性这些基本功。尤其是当你手里只有一个信号发生器加一块开发板想快速验证“我这个时钟能不能被可靠分频”的时候手上有一套成熟的二分频电路会省掉大量排查时间。我这次的做法很简单用一块 74LS74 双 D 触发器芯片把一路方波信号变成频率减半的对称方波然后用逻辑分析仪把输入、输出同时抓出来直接对比看时序确认分频关系是否正确。整个过程从电路图设计到波形验证一晚上就能走完。这篇就完整记录我的搭建过程和调试思路给同样刚入门时序逻辑的同学做一个可直接抄作业的参考。1.2 为什么选 74LS74 而不是 CD4013 或 74HC74拿到“二分频”这个需求第一反应当然是找一个触发器。市面上常见的 D 触发器主要有三款74LS74、74HC74、CD4013。你没看错随便哪个都能做分频但实际用起来差异挺大。我整理了一张表方便你对着选型。芯片工艺供电范围典型最高时钟频率输入阈值输出驱动特点74LS74TTL双极型4.75V~5.25V约 25MHz~30MHz高电平约 2.0V 以上灌电流/拉电流约 8mA/0.4mA教材经典、抗静电好、配 5V 系统最方便74HC74高速 CMOS2V~6V75MHz 左右5V 供电时阈值随供电变化约 VCC/2驱动能力较强低功耗、速度快、输入阻抗极高CD4013CMOS3V~15V约 10MHz5V 供电时更慢约 VCC/2较弱电源适应范围广但速度慢我选择 74LS74 有几个实际考虑第一实验室电源基本固定 5V74LS74 的供电范围恰好是 5V 稳的不用担心供电窗口问题第二它作为 TTL 芯片驱动 LED 这类负载特别直接IO 翻转时电压摆幅干净第三很多教材和参考设计里都用它讲 D 触发器遇到问题查资料好查。从个人经验角度说74HC74 在速度上有优势但它的输入阻抗很高接线稍微长一点就容易感应噪声新手在面包板上搭容易遇到莫名其妙的误触发。CD4013 又太慢做低频演示还行想看看稍微高频点的分频效果就捉襟见肘。权衡下来74LS74 正好卡在“够用、皮实、资料全”这个位置非常适合这次 1kHz 左右方波分频的实验。2. 电路原理与核心设计D触发器背后的逻辑2.1 一个“翻转”的D触发器是怎么变成分频器的D 触发器的行为可以用一句话概括在时钟上升沿到来时把 D 引脚上的电平“锁存”到输出 Q 上其他时间输出保持不变。这个特性是分频器的基础。要实现二分频需要把 Q 的非输出也就是/Q接回 D 输入。为什么这样接咱们推一下假设当前 Q 0那么 /Q 1D 也就是 1。时钟上升沿到来D 被传输到 QQ 变成 1。这时 /Q 0D 变成 0。下一个上升沿到来D 0 被传输到 QQ 又回到 0。循环下来输出 Q 在每个时钟上升沿都翻转一次。输入进来两个脉冲输出只完成一个完整周期频率正好减半而且因为每个上升沿都翻转高电平和低电平的时间各占一半占空比是干净的 50%。这里有个关键点为什么接 /Q 而不是直接接 Q如果直接把 Q 接回 D那每个时钟上升沿 Q 都会被强制保持当前状态相当于一个锁存器输出永远不翻转分频当然无从谈起。反馈信号必须取反这是整个电路的灵魂。时序上还有个细节值得注意74LS74 的翻转发生在时钟的上升沿不是下降沿。所以当你用逻辑分析仪抓波形时判断“输入哪一个边沿对应输出的变化”就非常重要后面调试一节我会详细演示怎么读这条时间线。2.2 完整电路图与元件清单含参数计算这次用到的器件非常少。我列个清单后面实物搭建我就照着它配。序号元件型号/规格数量用途1双 D 触发器74LS74DIP141核心分频器件2面包板830 孔1搭接电路3信号发生器可输出 5V 方波1提供主时钟输入4逻辑分析仪8 通道/24M 以上采样率1采集时序波形5杜邦线公对公、公对母若干信号连接6陶瓷电容0.1μF1电源去耦7LED普通红色2目视观察输入/输出8电阻330Ω2LED 限流9电阻10kΩ2PRE/CLR 上拉10直流电源5V1芯片供电完整的接线关系按引脚来说是这样Pin 14VCC接 5VPin 7GND接地。0.1μF 陶瓷电容尽量靠近 VCC 和 GND 之间放置。Pin 11CLR通过 10kΩ 电阻接 5V。Pin 41PRE通过 10kΩ 电阻接 5V。Pin 31CLK接信号发生器的方波输出。Pin 21D接 Pin 61/Q。Pin 51Q作为分频输出接 LED、逻辑分析仪 CH1。Pin 61/Q除接回 Pin 2 外也可以引出到逻辑分析仪观察反相信号。第二个触发器Pin 8~13这次先不用但所有输入引脚不能悬空把 Pin 132CLR和 Pin 102PRE都接 5VPin 112CLK接到 GNDPin 122D接到 GNDPin 8、9 悬空不接外部负载。2.3 关键引脚与接线细节第一次用 74LS74 的人经常栽在 Pre 和 CLR 引脚上。这两个引脚是异步置位和异步清零都是低电平有效。意思是只要 PRE 被拉低输出 Q 立刻被置成 1只要 CLR 被拉低输出 Q 立刻被清成 0跟时钟没关系。正因为它们优先级奇高如果悬空不接芯片内部逻辑可能因为引脚上的噪声电压而随机进入置位或清零状态表现出来的现象就是“输出不按输入变化”甚至会莫名其妙变高变低。处理办法很简单不用的 PRE 和 CLR 全部接到高电平用 10kΩ 上拉电阻或者直接接 VCC 都行。我习惯用上拉电阻这样万一后面想手动复位直接把电阻另一端接地就能实现低电平控制不用拆线。电源去耦电容也别省。74LS74 在翻转瞬间会产生一个短暂的电流尖峰如果电源线上没有去耦电容这个尖峰可能把 VCC 电压拉出明显纹波尤其在面包板上电源轨阻抗不低其他电路容易跟着一起抖。0.1μF 陶瓷电容放在芯片供电脚附近是最省事也最有效的做法。输入信号的电平匹配也需要注意。74LS74 是 TTL 电平输入高电平阈值大约是 2.0V低电平阈值大约 0.8V。所以你的信号发生器输出幅度不能设成 3.3V 逻辑那种完全兼容的假定最好直接把高电平设到 5V。我习惯在信号发生器上设置波形方波、幅度 5V、偏移 2.5V这样输出就是 0V 到 5V 的标准方波跟 74LS74 的输入要求完美匹配。如果信号发生器输出的方波只有 3V 左右很多时候芯片也能识别但不建议在正式测量时用这种临界电平。3. 实物搭建与初始上电从面包板到信号源3.1 面包板布局与接线流程面包板搭电路是有顺序的别想着把所有线一起怼进去。我这次的操作顺序是“先电源再控制再信号最后输出”这样每一步都好排查。第一步先处理电源轨。把 5V 电源接到面包板一侧的电源轨GND 接到另一侧。用万用表确认电源轨之间的电压在 4.9V~5.1V 之间再开始插芯片。第二步插入 74LS74。芯片要跨在面包板中间的凹槽上这样四组引脚分别落在左右两个独立区域内方便接线。插入时注意缺口方向Pin 1 在缺口的左上角。第三步接电源和地。用杜邦线把 VCC 引到正电源轨GND 引到负电源轨。放上 0.1μF 去耦电容一脚插 VCC一脚插 GND。第四步接 PRE 和 CLR。把两个 10kΩ 电阻一端接 5V另一端分别接 Pin 1 和 Pin 4。电阻在这儿的用途是拉住引脚默认电平不让它悬空受噪声干扰。第五步接反馈线。把 Pin 61/Q用杜邦线接到 Pin 21D这是二分频最核心的一根线别接错。第六步接输入信号。信号发生器的输出端接到 Pin 31CLK信号发生器的 GND 跟面包板 GND 必须共地。这一步很多人会忘导致测出来全是不明噪声。第七步接输出观察。Pin 51Q接一个 330Ω 限流电阻再串 LED 到 GND另外从 Pin 5 单独引一根线到逻辑分析仪 CH1作为测量点。注意 LED 的方向长脚阳极接电阻那边短脚阴极接 GND。这里我要多说一句面包板从正面看好好的背面其实是很多条金属簧片。芯片的相邻引脚容易因为插入角度问题连在一起。每次接线后最好用万用表蜂鸣档轻轻量一下相邻引脚有没有短路尤其是 VCC 和 GND 之间。3.2 上电前检查清单与信号源配置上电前我习惯过一遍清单这习惯帮我避免过好多次“冒烟”事故芯片插入方向是否正确缺口方向一致。VCC 和 GND 是否接反用万用表量 Pin 14 到 Pin 7 的电压。PRE 和 CLR 是否都被拉高。信号发生器的输出有没有设成 DC 耦合、5V 方波。信号源 GND 和面包板 GND 是否已共地。输出 LED 的限流电阻是否在线。信号发生器的具体设置我是这样做的输出方波频率先设 100Hz幅度 5V偏置 2.5V。新手建议从低频开始100Hz 的周期是 10ms用逻辑分析仪甚至肉眼都能看得很清楚等确认整个链路没问题了再把频率逐步往上推试试 1kHz、10kHz、100kHz观察波形有没有劣化。100Hz 这个起始频率还有一个好处LED 会以 50Hz二分频后的频率闪烁人眼虽然会觉得它在亮灭但用手机慢动作拍就能明显看出闪烁频率减半了。对于没有逻辑分析仪的朋友这一步已经算是一次“定性验证”。3.3 用LED和万用表做初步功能验证信号发生器上电后观察两个 LED一个接在输入 CLK 上也可以临时从信号发生器并联出来一个接在分频输出 Q 上。理想情况下两个 LED 的亮度差不多但输出那个灯的闪烁频率明显慢一半。如果肉眼分辨不出来把输入频率降到 1Hz你就能看到“输入亮一次输出才亮半次”的节奏。用万用表也能做基础验证切到频率档如果支持或者直流电压平均档输入 100Hz 方波用万用表频率档测 Q 脚应该显示约 50Hz。万用表直流电压档测 Q 脚因为占空比是 50%且方波在 0V~5V 之间摆动直流平均电压大约在 2.5V 附近。如果显示 0V 或 5V 恒定说明输出没有在翻转大概率是反馈线或者 PRE/CLR 的问题对应第 5 节去查。LED 和万用表是快速确认“电路活了”的手段但要真正验证时序、占空比、边沿对齐还是得上逻辑分析仪。别嫌麻烦工具用对了很多潜在问题一眼就能看出来。4. 逻辑分析仪调试全流程从波形看真相4.1 逻辑分析仪选型从Saleae到PulseView逻辑分析仪在这里的核心作用是把输入时钟和分频输出放进同一根时间轴上对比。人眼能看到的信号变化是毫秒级逻辑分析仪能给你看到纳秒级的边沿这是万用表和示波器都替代不了的。市面上常见的逻辑分析仪分几档入门级8 通道、24MHz 采样率价格几十块适合数字信号分析配合 PulseViewsigrok 开源软件使用是这个实验性价比最高的选择。进阶型8 通道、100MHz~400MHz 采样率像 Saleae Logic 系列软件功能更顺滑、协议解码更丰富适合后续做 SPI、I2C、UART 解码。专业级几十通道、采样率上 GHz带协议分析和眼图功能一般开发调试才需要。我这个实验的信号频率不高1kHz 量级24MHz 采样率的入门逻辑分析仪完全够用。采样率 24MHz 意味着每秒钟采 2400 万个点对 1kHz 的信号来说每个周期能采到 24000 个点边沿定位的精度远高于需求。软件方面我推荐从 PulseView 入手。它免费配合 sigrok 驱动对国产各种“Saleae 兼容”逻辑分析仪支持都很好而且界面清爽可以把通道拖来拖去指定协议解码非常适合学生和爱好者。当然你买的是 Saleae 正版直接用自带的 Logic 软件就行操作逻辑更顺滑。4.2 接线与软件配置采样率和触发设置逻辑分析仪接线我这样接逻辑分析仪的 GND 接到面包板 GND。CH0 接到 Pin 3CLK 输入。CH1 接到 Pin 5Q 输出。有条件的话CH2 接到 Pin 6/Q 输出可以同时看反相信号。接好后打开 PulseView做三件事。第一选择采样率。我这次用 24MHz 采样率如果仪器支持更高就设更高但不必须。采样率不是越高越好因为采样率越高同一段时间内产生的数据量越大软件处理和显示都会变卡。对于 1kHz 的信号24MHz 已经能把边沿精度控制到几十纳秒级足够看清绝大部分问题。第二设置触发。触发位置选 CH0 上升沿。这样每次采集到输入信号从低到高的瞬间软件就把前后一段波形固定下来。因为分频输出本来就跟输入上升沿同步以这个点为参考看输出对齐情况最直观。如果希望看一次完整的“一个输入周期”把触发延时设成 5 个采样周期左右或者把采集时间拉长到 20ms就能覆盖两个完整输入周期和一次输出翻转。第三选择采集时长。采集时间可以设置为 20ms这样能看到约 20 个输入周期、10 个输出周期波形数量足够做平均判断。设置完之后点击 Run 开始采集然后拉动信号源频率观察波形是否稳定。4.3 波形解读频率、占空比与相位的确认波形抓到后怎么确认分频成功我从三个维度判断。第一个维度频率对不对。PulseView 自带测量工具可以直接选中 CH1 上连续几个上升沿看时间差。比如输入是 1kHz那么相邻输出上升沿的间隔应该有 2ms对应的频率是 500Hz。如果用软件自带的频率测量功能直接显示“499.8Hz”之类的值那基本就是分频成功了。第二个维度占空比是不是 50%。把光标放在 CH1 的一个上升沿和紧接着的下降沿之间测量高电平时间再测一个完整周期。理论上高电平时间 半个周期也就是 1ms占空比 50%。如果测得高电平明显少于低电平比如高 0.8ms、低 1.2ms就要怀疑输入信号本身占空比不是 50%或者芯片边缘触发后的传输延迟造成边沿偏移。实际测量中因为 74LS74 翻转有几十纳秒的传输延迟绝对值不会严格等于 50%但误差应该在 1% 以内肉眼看波形是均匀的方波。第三个维度输入输出相位对齐。这是新手最容易忽略的。D 触发器的特点是上升沿采样所以输出翻转边沿应该严格出现在输入 CLK 的上升沿之后一小段延迟处。在逻辑分析仪上放大波形你能看到输出边沿比输入上升沿晚大约 15~30ns74LS74 的典型传播延迟。如果你看到输出边沿出现在输入下降沿附近或者跟上升沿完全没关联那就是反馈接错或者芯片状态被人为置位了。我在实测时最直观的感受是“输入一个脉冲喷吐出来输出就翻一格”。把光标放到第 10 个输入上升沿再看输出正好完成了 5 个完整周期。这种数格子确认分频比的方法比任何频率计都可靠。PulseView 还有一个好用功能在协议解码器里选择“D 触发器”相关的分析单元可以直接标出每个时钟上升沿时 D 输入的电平和 Q 输出的变化。当然这个功能在新版本里不一定叫这名字我一般还是靠光标手动核对顺便加深理解。4.4 进阶验证级联四分频与多通道联动二分频确认成功以后我顺手把 74LS74 的第二个 D 触发器也用上做成四分频验证一下多级级联的思路。四级联的接法很简单第一个触发器输出 1QPin 5作为第二个触发器的时钟输入接到 Pin 112CLK。Pin 122D接 Pin 92/Q。Pin 102PRE和 Pin 132CLR接高电平。Pin 82Q作为四分频输出。这样从 Pin 3 输入原始时钟Pin 5 输出二分频Pin 8 输出四分频。三个通道接到逻辑分析仪上触发设为 CH0 上升沿你就能看到三级波形像楼梯一样逐级变宽。输入 1kHz二分频 500Hz四分频 250Hz。这个效果拍下来发给朋友比什么解释都直观。级联时有个点要特别提醒74LS74 是边沿触发第二级触发器的时钟来自第一级的 Q 输出波形是非常陡峭的方波所以不会像用模拟电路分频那样出现“二次触发”问题。用 D 触发器级联做分频器每多一级频率减半这就是二进制计数器的基础思想。5. 常见问题排查与避坑实录5.1 芯片不翻转、输出恒定的经典原因我搭这个电路时踩的第一个坑就是输出一直维持在高电平怎么调输入频率都没反应。排查顺序我建议这样走先看 PRE 和 CLR。这两个引脚只要有一个被拉低输出就被强制置位/清零。我一开始用杜邦线把 PRE 悬空结果输出随机为高。后来老老实实接 10kΩ 上拉电阻到 VCC问题立刻消失。再看反馈线。如果 1DPin 2没接到 1/QPin 6而是误接到了 1QPin 5输出就会被锁在某个状态。这种接错最坑的是表面上看“好像也翻转”实际上要么翻转一次就停住要么完全不动。用万用表量一下 Pin 2 对地电压是不是跟 Pin 6 一致就行。三看时钟输入信号。信号发生器的幅度如果设成“高电平 1.5V”这种可怜巴巴的值74LS74 根本识别不了。把示波器或逻辑分析仪的 CH0 接到 CLK 上确认高电平真的接近 5V。TTL 芯片的高电平输入阈值是 2V但“能识别”和“稳定识别”是两回事我建议别在阈值边缘试探。四看芯片本身是不是坏了。74LS74 是双极型 TTL 芯片耐静电能力比 CMOS 强但也怕电源接反或者引脚短路。如果以上都排查完还不行换一片试试成本很低别浪费时间在坏芯片上。5.2 高频下波形畸变与噪声处理把输入频率推到 1MHz 以上时波形就开始不好看了。我在 10MHz 左右测过输出波形上升沿变得圆润甚至出现振铃。原因有两方面一个是 74LS74 本身的翻转速度有限另一个是面包板的寄生电容和导线电感在高频下开始起作用。处理办法降低频率到 100kHz 以下做实验这是面包板加 74LS74 最舒服的工作区间。想测更高的频率就把电路从面包板搬到洞洞板或 PCB 上尽量缩短走线。输入信号用同轴线连接屏蔽层在信号源端和面包板端都接地。电源端加一个大电解电容比如 10μF并联 0.1μF 陶瓷电容稳定电源轨。如果波形上出现随机毛刺特别是输出边沿附近有很多细小的抖动先怀疑是不是逻辑分析仪的 GND 夹子松了或者面包板电源轨接触不良。毛刺的根源往往是地弹和共地阻抗不是芯片本身的问题。5.3 逻辑分析仪采样率与触发设置的坑用逻辑分析仪调试时我最常犯的错误有两个。第一个错误是采样率设置过高导致数据量爆炸。一开始我图省心把采样率直接拉到 100MHz然后测一个 1Hz 的信号结果软件卡了十几秒才出波形。后来改成 24MHz 采样、采集 20ms流畅多了。记住一个公式数据量 采样率 × 采集时间。在采样率已经远高于信号频率 10 倍以上的前提下降采样率比缩短采集时间更能保护你的观察窗口。第二个错误是触发条件没配对。如果触发设成下降沿但实际信号是上升沿对齐的抓到的波形就会“差半个身位”看起来总觉得怪怪的。我的经验是凡是涉及 D 触发器分频的测量统一用时钟上升沿做触发这样输入和输出的对应关系最清楚。还有个小技巧PulseView 里可以开启“无限采集”模式让软件持续刷新波形直到你手动停止。调试时先用无限模式观察波形跳动等稳定了再按一次单次触发锁定一段完整波形来分析。这比反复点 Run 按钮省心多了。6. 扩展玩法从二分频到实用电路6.1 级联四分频电路设计前面说过第二个 D 触发器可以直接级联成四分频。这里我把完整设计再展开一点方便你想做的时候直接照抄。输入信号还是从 Pin 3 进。第一级输出 1QPin 5接第二级时钟 2CLKPin 11。第二级的 D 接 /QPin 12 接 Pin 9。这样输入 1kHz第二级输出正好 250Hz。如果想做八分频、十六分频方案有两个一个是多买几片 74LS74一片出两个 D 触发器两片就能做 8 分频三片就能做 16 分频另一个是换专门的计数器芯片比如 74LS934 位二进制计数器或者 CD4060带振荡器的 14 级分频器后者一个芯片就能输出多种分频比更适合做秒脉冲发生器这类应用。不过从学习角度讲我建议至少用 D 触发器亲手级联一次四分频。因为这是你理解“二进制计数器”的第一块积木后面看单片机定时器、看通信协议里的分频逻辑都会觉得似曾相识。6.2 分频器在音频放大器等电路中的应用场景二分频这个词在音频领域也经常出现。区别在于音响里的“二分频”通常指把音频信号分成高频段和低频段分别送给高音喇叭和低音喇叭那是用运放和滤波器做的有源分频跟数字电路的触发器分频完全不是一回事。别搞混了。但数字二分频在音频电路里确实有用武之地。比如你想把某个方波振荡器的频率从 440Hz标准音 A4降到 220Hz低八度 A3用 74LS74 做个二分频就行。很多电子琴、电子门铃、音效发生器里都有类似的数字分频电路用来生成不同八度的音符。我以前做过一个简单的“方波电子琴”一个 555 振荡器输出基础频率后面接 74LS74 做四分频就能同时出高八度和低八度的音效果非常直观。要在音频电路仿真软件里验证这种设计Multisim 这类工具也内置了 74LS74 模型画好电路直接跑仿真输入一个虚拟方波源示波器里看分频结果跟实物调试的思路完全一致。仿真可以先于实物验证电路逻辑实物再确认实际波形两套手段配合非常有效率。6.3 后续还能怎么玩频率计、LED灯效、协议时钟恢复这次把二分频器调通之后后续可以玩的方向还挺多。一个方向是做个简易频率计。思路是用一个已知频率的门控信号比如 1Hz控制一个计数器在一个门控周期内数输入信号的上升沿个数除以时间就得到频率。74LS74 做二分频器可以作为计数器的预分频器把高频信号先降下来降低计数器的负担。这个项目能把触发器的知识完美串起来。另一个方向是 LED 流水灯。用多个 D 触发器级联加上逻辑组合电路就能让 LED 按二进制规律亮灭。你见过的跑马灯、呼吸灯很多底层就是这种分频和计数结构。再往深了走分频思想在通信协议里的体现是时钟恢复——接收端用一个锁相环从数据流中恢复出同步时钟锁相环里的分频器一路接 VCO 输出一路接参考时钟环路稳定后 VCO 频率就等于参考频率的整数倍。这个过程中 D 触发器分频器就是反馈回路的常客。你这次搭的二分频电路可以说是理解更复杂锁相环系统的一个微小而关键的开始。最后再分享一个小技巧如果你在调试时分不清输入输出到底有没有对齐可以在逻辑分析仪里把 CH0 和 CH1 的显示颜色调成对比度高的两种颜色比如红和蓝然后把波形重叠显示。这样一旦输出边沿跟输入边沿发生错位视觉上会非常明显。这个习惯我到现在做项目都还在用。我做硬件调试的体会是一个电路能不能一次成功往往不在电路图本身而在你有没有带着“检查清单”的习惯。电源有没有接对复位引脚有没有拉高反馈线有没有接错信号地有没有共——这些小细节每一个都能让整个系统无声无息地失败。二分频器虽然简单但把它整个过程从头到尾走一遍你收获的不仅仅是“这个芯片怎么用”更是一套“从电路图到实测验证”的调试思维。这套思维会跟着你走很远。