计数器逻辑设计:74HC161/390反馈清零与置数实战解析
简介这份《数字电子线路基础2-5 计数器逻辑功能和设计》实验文档面向数字电路课程学生与实验操作者系统讲解计数器在计数、定时、分频等功能中的应用并围绕四位二进制计数器和二-五-十进制计数器重点介绍反馈归零法、反馈置数法设计任意进制计数器以及数字钟的级联实现思路。资源为1个docx文件共207KB内容结构完整包含实验目的、仪器设备、预习要求、实验原理、IC结构引脚图、实验步骤与思考题可直接用于实验前预习或实验报告参考。已有287人学习下载。文档内详细展开74HC161与74HC390的功能测试方法并给出六进制、六十进制、二十四进制计数器及简易数字钟的完整设计流程帮助读者理解中规模集成计数器的应用技巧解决N进制计数器搭建中的常见问题。1. 计数器逻辑功能设计从功能表到反馈识别码一次说清实验室里最常见的翻车现场不是计数器不会数而是清零端接反了。六进制计数器刚上电还能从 0 数到 5一到 6 就花一下再往后直接卡死或者 0~7 来回跳。这类问题几乎都出在同一个地方把异步清零和同步置数当成一回事反馈识别码习惯性写 N忘了看边沿触发方向和有效电平。数字电子线路基础里的计数器逻辑功能与设计实验重点就是 74HC1614 位二进制计数器和 74HC390双二-五-十进制计数器从功能测试、反馈归零/置数公式推导到六十进制、二十四进制级联成数字钟每一步都要对表下药。下面直接讲能落地的接法和判断方法。2. 74HC161 与 74HC390 功能测试边沿、清零与置数的有效电平别搞反动手搭电路前先把两片 IC 的功能表摸透。功能表不需要背但清零、预置、使能和进位四条必须能立刻说出来。74HC161 和 74HC390 的控制端有效电平完全相反接错一个门整个计数器就会变成“跳数器”。2.1 74HC161上升沿计数清零不看时钟置数要看时钟74HC161 是同步四位二进制加法计数器D0~D3 是预置数据输入Q0~Q3 是状态输出。控制端里~CLR 是异步清零低电平有效~LD 是同步预置低电平有效ENP、ENT 是两个计数使能端都是高电平有效RCO 是进位输出当 ENT1 且 Q3Q2Q1Q01111 时输出高电平。时钟 CP 上升沿触发。~CLR~LDENPENTCPQ3Q2Q1Q0功能说明0XXXX0000异步清零优先级最高10XX↑D3D2D1D0同步预置1111↑加 1加法计数110XX保持使能无效停止计数11X0X保持使能无效停止计数11X1X1111 且 ENT1RCO1 进位输出这张表里最容易忽略的是“异步”和“同步”两个词。异步清零不需要等 CP电平一到就清所以用反馈归零法做 N 进制时反馈识别码取 N同步预置必须等 CP 上升沿才把 D 端数据装入所以用反馈置数法时反馈识别码取 N-1。74HC161 的 ~CLR 优先级最高只要它是低电平Q 立即为 0之后 CP 来了也不会计数。用 Verilog 写一个行为模型能更直观对应功能表module counter_74hc161( input wire clk, input wire clr_n, input wire load_n, input wire enp, input wire ent, input wire [3:0] d, output reg [3:0] q, output wire rco ); always (posedge clk or negedge clr_n) begin if (!clr_n) q 4b0000; // 异步清零 else if (!load_n) q d; // 同步置数 else if (enp ent) q q 1b1; // 正常计数 end assign rco ent (q 4b1111); endmodule这个模型和 74HC161 的真实行为基本一致。实验箱上验证时把 D0~D3 接拨码开关CP 接手动单脉冲按键每按一次产生一个上升沿。先按清零键再按置数键观察 Q 是否等于 D然后把 ENP、ENT 都置 1连续按脉冲Q 从 0 递增到 15。如果 Q 不变化先用万用表确认 ENP、ENT 是否为高电平再确认 CP 按键有没有抖动。2.2 74HC390双二-五-十进制下降沿触发8421 和 5421 两种接法74HC390 是双二-五-十进制计数器每片内部有两个独立计数链路。每个链路分成二进制部分和五进制部分CP0 触发 Q0CP1 触发 Q1~Q3。清零端 CR 高电平有效异步清零。注意它和 74HC161 正好相反74HC390 是下降沿触发清零是高电平有效。手册上说的“二-五-十进制”指内部就是一个二进制计数器加一个五进制计数器通过外部连接组合成十进制。连接方式外部时钟输出编码计数范围Q0 接 CP1从 CP0 输入Q3Q2Q1Q084210000~1001Q3 接 CP0从 CP1 输入Q3Q2Q1Q054210000~0100, 1000~1100实际实验用第一种接法最多把 Q0 和 CP1 短接时钟从 CP0 进入就得到 BCD 8421 的十进制计数器Q3 是最高位Q0 是最低位。要测功能先 CR1 清零再断开 CP0/CP1 分别看CP0 给脉冲时只有 Q0 翻转CP1 给脉冲时 Q1~Q3 按五进制循环两个部分互不干扰。然后再把 Q0 接到 CP1从 CP0 连续输入 10 个脉冲Q3Q2Q1Q0 应该按 0000、0001、…、1001、0000 循环。如果出现 1010 或 1011说明 CP1 连接虚焊或者清零没有释放。74HC390 的下降沿特性在级联时很省事前一级的 Q 输出自身有下降沿可以直接作为后一级的时钟。这不代表随便接要看后级是上升沿还是下降沿。后面做六十进制时就用到了这个差别。3. 任意 N 进制计数器反馈归零法与反馈置数法的公式推导和 Verilog 验证功能表摸清后进入 N 进制计数器设计。核心就两个反馈归零法和反馈置数法。两者的区别只在“反馈识别码取多少”和“清零/置数端是同步还是异步”。把这个搞明白六进制、六十进制、二十四进制就只是同一个套路换参数。3.1 反馈归零法异步清零看 N同步清零看 N-1反馈归零法利用计数器清零端截取计数过程中的某一个中间状态让计数器从此状态返回到零重新开始。把模数大的计数器改成模数小的计数器关键是清零信号的选择。清零方式反馈识别码有效循环状态异步清零N0 ~ N-1同步清零N-10 ~ N-174HC161 的 ~CLR 是异步清零所以做六进制时反馈识别码是 6不是 5。6 对应的 161 状态是 0110取 Q2 和 Q1 为 1用与非门输出低电平接到 ~CLR。状态一到 0110立刻被拉回 0000所以有效循环是 0000~0101正好六种状态。注意 0110 存在时间极短在数码管上基本看不见这是正常的但只要后级电路是边沿触发这个毛刺就可能被当成有效时钟引出竞争冒险。如果换成同步清零的 74HC163反馈识别码就是 N-1即 5。因为 74HC163 的清零要等下一个时钟上升沿才生效状态 5 会保持一个完整时钟周期然后才回 0。所以“看 N 还是 N-1”本质是看清零动作发生在组合逻辑之后还是时钟之后。3.2 反馈置数法同步置数识别码是 NbN-1反馈置数法利用具有置数功能的计数器截取从 Nb 到 Na 之间的 N 个有效状态构成 N 进制计数器。设起始状态 Nb结束状态 Na有效循环是 Nb~Na。对于 74HC161 的同步置数Na Nb N - 1如果是异步置数芯片Na Nb N。最常见的做法是 Nb0D 端全部接地这样 NaN-1。做六进制时Na5检测 0101 时让 ~LD 变低下一个时钟上升沿把 0 装入循环回到 0000。用 Verilog 写六进制就是下面这样module counter_mod6( input wire clk, input wire rst_n, output reg [3:0] q ); always (posedge clk or negedge rst_n) begin if (!rst_n) q 4d0; else if (q 4d5) q 4d0; // 反馈置数识别码 NbN-15 else q q 4d1; end endmodule这个模型和 74HC161 的同步置数行为一致。如果把q 4d5改成q 4d6计数器会从 0 数到 6再在下一个时钟回 0实际是 7 进制。实验箱上搭电路时用 74HC00 与非门检测 Q2 和 Q0输出接到 ~LD。因为 50101中 Q21、Q01与非门输出低电平正好满足低有效置数。3.3 门电路选择低有效用与非门高有效用与门反馈信号通常是几个状态位的组合。比如 60110需要检测 Q21 和 Q1150101需要检测 Q21 和 Q01。如果控制端低有效用与非门因为“两个 1 相与后取反”正好输出 0。如果控制端高有效用与门输出 1。手边 7400、7408 分别是四与非门、四与门刚好对应这两种情况7432 或门用来合并多路反馈比如二十四进制里十位和个位的复位条件同时成立。控制端有效电平检测条件推荐芯片~CLR / ~LDLA1 且 B17400 与非门CRHA1 且 B17408 与门多路复位合并HA1 或 B17432 或门3.4 用低速脉冲做功能验证反馈归零法和置数法搭出来后先用 1Hz 左右的脉冲验证别直接接高频晶振。低频下数码管能清楚看到 0→1→2→3→4→5→0。如果出现 0→6→0 或 0→5→5→0先查反馈识别码再查门电路。连续脉冲频率过高时LED 余晖会掩盖毛刺误以为正常。常见的 Verilog 计数器资料里多数都写成if (q N-1) q 0其实就是置数法的硬件描述语言表达理解了 74HC161 再看那些代码会容易得多。4. 六十进制与二十四进制数字钟级联进位、整体复位与竞争冒险处理数字钟是整个实验的落点两个六十进制计数器分别做秒和分一个二十四进制计数器做小时。难点不在单个计数器而在级联时进位信号的沿怎么匹配。下面按实验步骤拆开讲。4.1 六十进制个位十进制、十位六进制进位从 Q3 取实验要求用一片 74HC161 和一片 74HC390 构成六十进制。实际连接如下秒脉冲/方波 - 74HC390 CP0 74HC390 Q0 - 74HC390 CP1 74HC390 Q3 - 7400 与非门(输入短接) - 74HC161 CP 74HC161 D3D2D1D0 0000 74HC161 Q2,Q0 - 7400 与非门 - 74HC161 ~LD 74HC161 ENPENT1第一行和第二行把 74HC390 接成 8421 码十进制计数器个位从 0~9。第三行是个位到十位的进位Q3 在一个十进制周期里只有 8、9 两个状态为高从 9 到 0 时产生下降沿每 10 个时钟一次。74HC161 是上升沿触发所以用 7400 与非门两个输入短接做反相器把下降沿变成上升沿送到 161 的 CP。第四、五行是十位六进制D 端接 0检测 Q2 和 Q0 为 1状态 5时让 ~LD 变低下一个时钟回 0。这样个位和十位合起来就是 0~59 循环。4.2 二十四进制整体复位法检测 24不是 23二十四进制计数器的显示范围是 00~23。整体复位法的原理和反馈归零法一样用 N 作为反馈识别码让计数器走到 24 的瞬间被异步清零。这里很容易写错成检测 23。如果检测 23计数器会在 22 之后提前复位实际变成 23 进制。正确的检测条件应该是十位等于 20010个位等于 40100。十位可以用 74HC161 做三进制D 端接 0检测十位 Q11 时置数回 0有效状态为 0、1、2。个位继续用 74HC390 做十进制。整体复位信号用 74HC08 与门将十位 Q1 和个位 Q2 相与输出高电平直接接 74HC390 的 CR同时该高电平经 7400 反相后接 74HC161 的 ~CLR。这样从 23 走到 24 的瞬间两个计数器都被异步清零数码管上看不到 24。这里特别要注意 74HC390 的清零是高电平有效74HC161 的清零是低电平有效所以同一个复位信号要分两路一路直接给 CR一路反相给 ~CLR。如果两边都接同一个电平一边会永远不复位。4.3 秒、分、时级联六十进制的 Q2 下降沿作为小时时钟数字钟里两个六十进制和一个二十四进制级联时关键是分钟的进位信号。秒计数器从 59 跳到 00 时十位从 50101变为 00000Q2 产生一个下降沿。这个下降沿正好对应“每分钟一次”可以作为小时计数器的时钟。如果后级小时计数器用 74HC390 构建直接把秒十位 Q2 接到小时个位的 CP 即可因为 74HC390 是下降沿触发。如果后级用 74HC161则需要先经过与非门反相把下降沿转成上升沿。注意分钟的进位不能从个位 Q3 取个位每 10 秒就跳一次不能代表 60 秒的完整周期。4.4 竞争冒险清零法毛刺与替代做法反馈归零法在异步清零时清零信号和计数时钟几乎同时到达Q 端会产生几个纳秒的毛刺。实验箱上用 LED 看没问题但用示波器看 CP 或 RCO 时会看到窄脉冲。处理手段有三种一是改用反馈置数法让复位动作与时钟同步二是把复位信号用 D 触发器打一拍再输出三是在复位输出端加 RC 滤波或施密特整形。做六进制时如果清零法出现竞争冒险最常见的就是换成同步置数法这也是实验思考题里提醒的“如出现竞争冒险可改用预置数法”的原因。5. 计数器工程的进阶排查自启动、毛刺消除与替代方案最后收在一个具体技巧上拿到任意一个计数器电路先判断它能不能自启动。自启动指的是上电后即使进入无效状态也能在若干时钟后回到有效循环。74HC161 是四位二进制做成十进制时 A~F 都是无效状态。测试方法很简单把 D 端拨到 1111手动给几个脉冲看 Q 能否回到 0~9。如果回不来说明反馈逻辑只覆盖了有效状态需要把无效状态也纳入置数条件。常见做法是把所有无效状态对应的输出位做或门合并统一送入 ~LD让它们强制回到 0。毛刺处理上最可靠的不是加电容而是改用同步置数法。因为同步置数只在时钟上升沿动作不会产生异步清零那种“状态刚出现就被拉走”的窄脉冲。如果实验箱条件允许先用手动单脉冲验证功能再用连续脉冲验证时序最后才用示波器看毛刺。看毛刺时探头接地线要短否则测到的可能是探头自身的振铃。这套硬件逻辑放到现在也并不过时。51 单片机里的定时器计数器本质就是初值重装和溢出初值重装对应 74HC161 的置数端S7-1200 PLC 里的 CTU 计数指令PV 预置值对应这里的 D 端输入Verilog 计数器代码里最常见的if (q N-1) q 0其实就是同步置数法。理解了 74HC161 和 74HC390 的边沿与有效电平再看这些平台上的计数器资料基本都能一眼认出它们的“反馈识别码”写在哪儿。做计数器排错先看时钟沿再看有效电平最后才怀疑芯片好坏。本文还有配套的精品资源点击获取

相关新闻

RT-Thread GD32 ARM 系列 BSP 外设驱动使用教程:使用 ENV 工具开启更多板载与片上资源

RT-Thread GD32 ARM 系列 BSP 外设驱动使用教程:使用 ENV 工具开启更多板载与片上资源

操作系统嵌入式物联网嵌入式OSRTOS 【免费下载链接】rt-thread RT-Thread is an open source IoT Real-Time Operating System (RTOS). https://rt-thread.github.io/rt-thread/ 项目地址: https://gitcode.com/gh_mirrors/rt/rt-thread 点击查看 免费下载 本文基于…

2026/9/23 16:07:43 阅读更多 →
DeepSeek-R1本地RAG实战:PDF知识库构建与高性能部署

DeepSeek-R1本地RAG实战:PDF知识库构建与高性能部署

简介:本资源是一份面向AI开发者与技术实践者的本地知识库构建指南,聚焦DeepSeek-R1大模型在RAG(检索增强生成)场景下的轻量级落地应用。文档系统讲解了如何利用Ollama、Nomic-Embed-Text向量模型与AnythingLLM平台,从零…

2026/9/23 16:07:43 阅读更多 →
Dopamine 中 RainbowNetwork 深度解析:基于卷积网络计算 Agent 回报分布的架构与实现

Dopamine 中 RainbowNetwork 深度解析:基于卷积网络计算 Agent 回报分布的架构与实现

机器学习深度学习 【免费下载链接】dopamine Dopamine is a research framework for fast prototyping of reinforcement learning algorithms. 项目地址: https://gitcode.com/gh_mirrors/do/dopamine 点击查看 免费下载 RainbowNetwork 是 Dopamine 项目&#x…

2026/9/23 16:06:43 阅读更多 →

最新新闻

面试被问qizi原理答不上?3个最佳实践救急

面试被问qizi原理答不上?3个最佳实践救急

面试被问qizi原理答不上?3个最佳实践救急 昨天陪一个后端兄弟模拟面试,他刚把简历上写的“负责高并发qizi模块优化”背得滚瓜烂熟,结果面试官轻飘飘问了一句:“你这个qizi的性能瓶颈到底在哪?内存怎么泄漏的?”他当场卡壳,眼神里全是慌。…

2026/9/23 17:02:07 阅读更多 →
kornia `distance_transform` 数值下溢修复:从静默返回错误结果到显式报错(4152)

kornia `distance_transform` 数值下溢修复:从静默返回错误结果到显式报错(4152)

计算机视觉人工智能深度学习图像处理 【免费下载链接】kornia 🐍 Geometric Computer Vision Library for Spatial AI 项目地址: https://gitcode.com/gh_mirrors/ko/kornia 点击查看 免费下载 kornia.contrib.distance_transform 是 Kornia 中基于级联…

2026/9/23 17:02:07 阅读更多 →
AutoClip WebSocket实时通信架构详解:进度推送背后发生了什么

AutoClip WebSocket实时通信架构详解:进度推送背后发生了什么

AutoClip WebSocket实时通信架构详解:进度推送背后发生了什么 【免费下载链接】autoclip AutoClip : AI-powered video clipping and highlight generation 一款智能高光提取与剪辑的二创工具 项目地址: https://gitcode.com/GitHub_Trending/autoc/autoclip …

2026/9/23 17:02:07 阅读更多 →
美爆高频面试题拆解:3个源码技巧搞定项目难题

美爆高频面试题拆解:3个源码技巧搞定项目难题

美爆高频面试题拆解:3个源码技巧搞定项目难题 看了一堆教程还是不会写项目?这几乎是每个后端开发者的噩梦。你背了八股文,刷了算法题,真到写业务代码时,手一抖,逻辑全乱。更扎心的是, 面试必问…

2026/9/23 17:02:07 阅读更多 →
UKF融合IMU与GPS实现六自由度火箭跟踪与落点预测

UKF融合IMU与GPS实现六自由度火箭跟踪与落点预测

简介:本资源面向本硕博等教研学习人群,提供基于UKF(无迹卡尔曼滤波)的6自由度火箭飞行预测跟踪与状态估计完整MATLAB实现,解决如何利用加速计、陀螺仪和GPS多源数据融合,完成火箭位置、速度与姿态估计的问题…

2026/9/23 17:02:06 阅读更多 →
DevAGI平台:AI开发者的智能编码与自动化测试工作台

DevAGI平台:AI开发者的智能编码与自动化测试工作台

1. DevAGI平台概述:下一代AI开发者的工作台DevAGI是当前AI工程化领域最具创新性的开发平台之一,它重新定义了人机协作的边界。这个平台最显著的特征是将传统IDE(集成开发环境)与大模型能力深度整合,形成了一套完整的AI…

2026/9/23 17:01:05 阅读更多 →

日新闻

3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A…

2026/9/23 0:00:23 阅读更多 →
2k显示屏性能优化踩坑:版本升级后API全变了,这份源码解析救了我

2k显示屏性能优化踩坑:版本升级后API全变了,这份源码解析救了我

2k显示屏性能优化踩坑:版本升级后API全变了,这份源码解析救了我 刚把开发环境的显示器从1080P换到2K,跑老项目直接报错,版本升级后 API…

2026/9/23 0:01:25 阅读更多 →
3步搞定美眉图实战项目,告别官方文档抓不住重点

3步搞定美眉图实战项目,告别官方文档抓不住重点

3步搞定美眉图实战项目,告别官方文档抓不住重点 官方文档翻了三遍还是云里雾里?别急,美眉图在实战项目中常被用来做数据可视化,但它的原理比你想的简单。今天咱们直接上手,用一个完整的小项目把美眉图跑通,不再死磕那些冗长的理论说明。…

2026/9/23 0:01:25 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/23 4:55:02 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/23 4:49:06 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/23 9:53:41 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/23 9:53:40 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/23 9:53:40 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/23 9:53:40 阅读更多 →