考研数电·零基础讲义 · 第 16 讲(上)|同步/异步计数器的原理
学完这一讲,你能自己用触发器"搭"出二进制、十进制的加法/减法计数器,写出它们的驱动方程、状态方程,画出状态转换图和波形,并能说清同步和异步计数器的区别。预计用时 90–120 分钟。
本讲地图#
- 计数器是什么:一种"每来一个时钟脉冲,内部数字就加 1(或减 1)"的时序电路;顺便学会"模""容量""分频"这几个词。
- 同步计数器:所有触发器共用同一个时钟、同时翻转。重点是同步二进制加法计数器(用 T 触发器)和同步十进制计数器。
- 异步计数器:触发器像接力赛一样一级带一级地翻转。重点是"下降沿接 Q 是加法、接Q是减法"这条规律。
- 华师怎么考:考纲明确写了"时序逻辑电路:触发器、计数器、寄存器"。计数器的原理是下一讲集成计数器 74HC161/160 和"任意进制计数器设计"(2026 回忆题第 8 题就是用两片 74HC161 设计模 28 计数器)的地基;分析一个由触发器构成的计数器、判断它是几进制、能否自启动,也是第 14 讲那类分析题的常见素材。
- 教材对应:阎石《数字电子技术基础》第六版 第 6 章 6.3.2 节"计数器"中的"一、同步计数器"和"二、异步计数器"。
前置知识#
- 二进制数和二进制加法、减法(见第 01 讲)。
- T 触发器、JK 触发器的特性方程:Q∗=T⊕Q,Q∗=JQ+KQ;上升沿/下降沿触发的含义(见第 13 讲(中)、第 13 讲(下))。
- 时序电路分析的套路:驱动方程 → 状态方程 → 状态转换表 → 状态转换图 → 时序图 → 自启动(见第 14 讲)。
一、计数器到底是个什么东西#
1.1 大白话#
想象你在体育馆门口拿着一个"咔哒计数器",每进来一个人,你按一下,窗口里的数字就加 1。数到 9999 再按一下,它又回到 0000。
数字电路里的计数器就是这个东西的电子版:
- "按一下"换成了时钟脉冲 CLK(也叫计数脉冲);
- 窗口里的数字换成了几个触发器的状态——每个触发器记住一位二进制数(0 或 1),4 个触发器就能记住一个 4 位二进制数;
- 每来一个脉冲,这个二进制数按规律变一次(加 1 或减 1),到头了再回到起点,周而复始。
计数器是数字系统里用得最多的时序电路。它不光能"数数",还能:
- 分频:把高频的时钟变成低频的信号(后面会看到,最低位的输出频率正好是时钟的一半);
- 定时:数够 N 个已知周期的脉冲,就等于过去了一段确定的时间;
- 产生节拍、序列信号等。
1.2 计数器的分类(先混个脸熟)#
| 分类依据 |
类别 |
一句话解释 |
| 触发器是否同时翻转 |
同步计数器 |
所有触发器接同一个 CLK,同时动作 |
|
异步计数器 |
触发器的时钟来自前一级的输出,有先有后 |
| 数字增还是减 |
加法计数器 |
每来一个脉冲加 1 |
|
减法计数器 |
每来一个脉冲减 1 |
|
可逆(加/减)计数器 |
由一根控制线决定加还是减 |
| 编码方式 |
二进制、二-十进制(BCD)、格雷码…… |
状态按什么码排列 |
| 计数容量 |
十进制、十六进制、六十进制…… |
一个循环有多少个状态 |
1.3 三个必须会的词:模、容量、分频#
- 模(进制)M:计数器一个完整循环包含的有效状态个数。一个循环有 16 个状态,就叫"十六进制计数器"或"模 16 计数器"。
- 容量:计数器能计到的最大数。n位二进制计数器各位全为 1 时最大,所以容量是2n−1。注意:4 位二进制计数器是模 16、容量 15,两者差 1,别混。
- 分频:如果时钟频率是f0,某个输出端每k个时钟周期重复一次,它的频率就是f0/k,叫做"k分频"。
⚠️ 易错点:n个触发器最多有2n种状态,所以n个触发器构成的计数器,模最多是2n。要做模 10 的计数器,3 个触发器(最多 8 种)不够,至少要 4 个。
二、同步二进制加法计数器#
2.1 大白话:二进制"加 1"时哪些位会变?#
先用竖式算一个二进制加 1:
|
第 3 位 |
第 2 位 |
第 1 位 |
第 0 位 |
| 原数 |
0 |
1 |
1 |
1 |
| 加 1 |
|
|
|
+1 |
| 结果 |
1 |
0 |
0 |
0 |
你会发现一个规律:
- **最低位(第 0 位)**每次加 1 都会变(0 变 1,或 1 变 0);
- 第i位只有在"它下面所有低位全是 1"的时候才会变——因为只有这时候,低位才会一路进位进到它这里。
上面的例子里,第 0、1、2 位都是 1,所以加 1 后它们全变成 0,进位一路冲到第 3 位,第 3 位也变了。
这个规律简直就是给 T 触发器量身定做的:T 触发器的特性是T=1时翻转、T=0时保持,而"翻转"恰好就是"这一位要变"。所以我们只需要让"该变的位"T=1、"不该变的位"T=0就行了。
2.2 正式电路:驱动方程#
把上面的规律写成公式。用Q0表示最低位,Q3表示最高位(4 位计数器)。第i位的 T 输入应该是"所有比它低的位都为 1",也就是它们相与:
Ti=Qi−1Qi−2⋯Q1Q0(i=1,2,⋯,n−1),T0=1
对 4 位计数器,具体写出来就是驱动方程:
T0=1,T1=Q0,T2=Q0Q1,T3=Q0Q1Q2
逐行拆解:
- T0=1:最低位每个脉冲都翻转。实际电路里就是把 FF0 的 T 端接高电平。
- T1=Q0:只有Q0=1时,第 1 位才翻转。
- T2=Q0Q1:读作"T2 等于 Q0 与 Q1",需要一个两输入与门。
- T3=Q0Q1Q2:低三位全 1 时最高位才翻转。
- 4 个触发器的 CLK 端全部接到同一个计数脉冲 CLK 上——这就是"同步"二字的来历。
2.3 状态方程和输出方程#
把驱动方程代入 T 触发器特性方程Q∗=T⊕Q=TQ+TQ(Q∗读作"Q 的次态",即下一个脉冲之后的状态):
Q0∗=Q0
Q1∗=Q0Q1+Q0Q1=Q0⊕Q1
Q2∗=Q0Q1Q2+Q0Q1Q2
Q3∗=Q0Q1Q2Q3+Q0Q1Q2Q3
计数器还需要一个进位输出 C,告诉"更高一级":我已经数满一圈了。4 位二进制计数器数到 1111 时再来一个脉冲就要回到 0000、向高位进 1,所以:
C=Q0Q1Q2Q3
2.4 状态转换表(逐拍模拟结果)#
从 0000 开始,把每个现态代入状态方程算次态(这张表我已用 Python 逐拍模拟核对过):
| 计数顺序 |
Q3 |
Q2 |
Q1 |
Q0 |
十进制 |
进位C |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
| 1 |
0 |
0 |
0 |
1 |
1 |
0 |
| 2 |
0 |
0 |
1 |
0 |
2 |
0 |
| 3 |
0 |
0 |
1 |
1 |
3 |
0 |
| 4 |
0 |
1 |
0 |
0 |
4 |
0 |
| 5 |
0 |
1 |
0 |
1 |
5 |
0 |
| 6 |
0 |
1 |
1 |
0 |
6 |
0 |
| 7 |
0 |
1 |
1 |
1 |
7 |
0 |
| 8 |
1 |
0 |
0 |
0 |
8 |
0 |
| 9 |
1 |
0 |
0 |
1 |
9 |
0 |
| 10 |
1 |
0 |
1 |
0 |
10 |
0 |
| 11 |
1 |
0 |
1 |
1 |
11 |
0 |
| 12 |
1 |
1 |
0 |
0 |
12 |
0 |
| 13 |
1 |
1 |
0 |
1 |
13 |
0 |
| 14 |
1 |
1 |
1 |
0 |
14 |
0 |
| 15 |
1 |
1 |
1 |
1 |
15 |
1 |
| 16 |
0 |
0 |
0 |
0 |
0 |
0 |
可以看到:16 个状态一个循环,所以它是十六进制(模 16)计数器;只有在 1111 时C=1。第 16 个脉冲到来时C从 1 跳回 0,这个下降沿(或者C为 1 的那段高电平)就可以用作向高位的进位信号。
它的状态转换图就是 16 个圆圈首尾相连的一个大环:0000→0001→⋯→1111→0000,每个状态都在环上,没有无效状态,自然能自启动。
2.5 时序图:顺便看懂"分频"#
下面这张波形图是按上面的状态方程逐拍模拟画出来的(假设触发器在 CLK 上升沿动作)。红色竖线从左往右扫,你可以盯着每个上升沿,看看哪几位翻转了。
图 1:4 位同步二进制加法计数器的时序图,最下面一行是当前状态的十进制值(动画循环播放)
看图你会发现:
- Q0每个时钟翻一次,周期是 CLK 的 2 倍 → 频率21f0;
- Q1周期是 CLK 的 4 倍 → 41f0;
- Q2 → 81f0,Q3 → 161f0。
也就是说,二进制计数器的每一位都是前一位的二分频。所以计数器也常叫"分频器"。
2.6 例题 1:只看驱动方程,判断下一拍哪些触发器翻转#
题:4 位同步二进制加法计数器(T0=1,T1=Q0,T2=Q0Q1,T3=Q0Q1Q2),现态Q3Q2Q1Q0=1011。来一个计数脉冲后状态是多少?哪些触发器翻转?
解:
第 1 步,读出各位:Q3=1, Q2=0, Q1=1, Q0=1。
第 2 步,代入驱动方程算每个 T:
- T0=1;
- T1=Q0=1;
- T2=Q0Q1=1⋅1=1;
- T3=Q0Q1Q2=1⋅1⋅0=0。
第 3 步,T=1 的翻转、T=0 的保持:
- Q0:1 → 0;Q1:1 → 0;Q2:0 → 1;Q3:保持 1。
所以次态是1100。FF0、FF1、FF2 翻转,FF3 不变。
第 4 步,自查:1011是十进制 11,加 1 应该是 12,即1100。✔
2.7 另一种同步结构:控制时钟(了解即可)#
上面是"控制 T 端":所有触发器都收到时钟,靠 T 决定翻不翻。教材还介绍了另一种做法——"控制时钟":把所有触发器都接成T=1(来一个时钟就翻),然后用与门控制时钟能不能送到这个触发器:
clki=CLK⋅Qi−1Qi−2⋯Q0
只有低位全为 1 时,计数脉冲才能"通过"与门送到第i位。两种结构的状态转换表完全一样,考试一般只要求掌握第一种。
⚠️ 易错点:
- Ti是"低位全 1"的与,不是"低位有 1"的或。
- "模 16"和"容量 15"别混。
- 进位C只在 1111 这一个状态为 1,不是每次低位进位都输出C。
三、同步二进制减法计数器#
3.1 大白话:减 1 时哪些位会变?#
二进制减 1,比如1000−1=0111:最低位每次都变;第i位只有在"它下面所有低位全是 0"时才会变——因为只有这时才会一路向它借位。
和加法正好"镜像":加法看"低位全 1",减法看"低位全 0"。
3.2 驱动方程#
T0=1,Ti=Qi−1⋅Qi−2⋯Q0(i=1,2,⋯,n−1)
4 位就是T1=Q0,T2=Q0Q1,T3=Q0Q1Q2。从 0000 开始,模拟出的序列是0000→1111→1110→⋯→0001→0000(十进制 0, 15, 14, …, 1, 0),16 个状态一循环。
3.3 例题 2:3 位同步减法计数器的逐拍计算#
题:3 位同步二进制减法计数器(T0=1,T1=Q0,T2=Q0Q1),初态Q2Q1Q0=000,写出连续 3 个脉冲后的状态。
解:
- 第 1 个脉冲:Q0=0,Q1=0 → T0=1,T1=1,T2=1,三位全翻:000→111。(0 减 1 借位到底,变成 7,对!)
- 第 2 个脉冲:现态 111,Q0=1 → T1=0,T2=0,只有Q0翻:111→110。
- 第 3 个脉冲:现态 110,Q0=0,Q1=1 → T1=1,T2=Q0Q1=1⋅0=0:Q0、Q1翻,Q2保持 → 110→101。
结果依次是111,110,101,即 7, 6, 5。✔
3.4 加/减可逆计数器(思路)#
把加法和减法的控制电路合在一起,用一根控制线U/D(读作"U 非斜杠 D",Up/Down)来选:
Ti=(U/D)⋅j=0∏i−1Qj+(U/D)⋅j=0∏i−1Qj,T0=1
U/D=0时只剩前一项 → 加法;U/D=1时只剩后一项 → 减法。集成芯片 74HC191(十六进制)、74HC190(十进制)就是这么做的,下一讲会简单介绍。
四、同步十进制加法计数器#
4.1 大白话:让二进制计数器"数到 9 就回头"#
人习惯十进制。用 4 个触发器(16 种状态)表示 0~9,只用0000∼1001这 10 个状态(8421 BCD 码),1010∼1111这 6 个状态不用。问题是:怎么让它在 1001 之后直接回到 0000,而不是走到 1010?
办法:在二进制计数器的基础上"动点手脚"——到 1001 时,让Q0和Q3翻转(变 0),让Q1、Q2别翻(本来就是 0)。
4.2 驱动方程(教材图 6.3.17 电路)#
T0=1,T1=Q0Q3,T2=Q0Q1,T3=Q0Q1Q2+Q0Q3
逐行拆解(和二进制版对比):
- T1=Q0Q3:多乘了一个Q3。平时Q3=0,和二进制一样;到 1001 时Q3=1,T1被"封住"为 0,Q1不会翻成 1。
- T2=Q0Q1:和二进制一样(在 1001 时Q1=0,自然T2=0)。
- T3=Q0Q1Q2+Q0Q3:前一项是二进制本来的(0111 → 1000 时Q3要翻);后一项Q0Q3专门负责"在 1001 时让Q3翻回 0"。
进位输出C=Q0Q3(只在 1001 时为 1)。
4.3 例题 3:验证 1001 之后回到 0000#
题:用上面的驱动方程,算 1001 的次态。
解:Q3Q2Q1Q0=1001,即Q3=1,Q2=0,Q1=0,Q0=1。
- T0=1 → Q0:1→0;
- T1=Q0Q3=1⋅0=0 → Q1保持 0;
- T2=Q0Q1=1⋅0=0 → Q2保持 0;
- T3=Q0Q1Q2+Q0Q3=0+1⋅1=1 → Q3:1→0。
次态0000。✔ 而从 0000 到 1000 的过程中Q3=0,各式退化成二进制计数器的式子,所以前 9 个脉冲和二进制一样。逐拍模拟结果:0→1→2→⋯→9→0,10 个状态一循环。
4.4 能自启动吗?——把 6 个无效状态挨个代进去#
上电时触发器的状态是随机的,万一落在1010∼1111怎么办?把这 6 个状态逐个代入状态方程(Python 已核对):
| 无效现态 |
次态 |
再下一拍 |
| 1010 |
1011 |
0110(有效) |
| 1011 |
0110(有效) |
— |
| 1100 |
1101 |
0100(有效) |
| 1101 |
0100(有效) |
— |
| 1110 |
1111 |
0010(有效) |
| 1111 |
0010(有效) |
— |
每个无效状态最多 2 拍就回到有效循环,所以能自启动。完整状态转换图如下:
图 2:同步十进制加法计数器的完整状态转换图,红色虚线圈是无效状态,箭头表示它们怎样回到有效循环
4.5 同步十进制减法计数器(了解)#
减法版要做到0000减 1 后变成1001(而不是 1111)。教材的做法是:在全 0 状态时把T1、T2封锁为 0,于是来脉冲时只有Q0、Q3翻成 1,得到 1001;之后就和二进制减法一样往下数:0→9→8→⋯→1→0。
⚠️ 易错点:
- 判断十进制计数器能否自启动,必须把 6 个无效状态全部代入,一个都不能漏;有一个状态绕不回来(例如自己转圈)就不能自启动。
- 十进制计数器的进位是C=Q0Q3(1001 时),不是Q0Q1Q2Q3。
五、异步二进制计数器#
5.1 大白话:接力赛#
同步计数器像军训"齐步走",口令(CLK)一下,大家同时动。异步计数器则像接力赛:只有第一棒(FF0)听发令枪(CLK),后面每一棒都要等前一棒"交棒"才跑。
"交棒"是什么?回忆二进制加法:低位从 1 变成 0 的那一刻,正好要向高位进位。而"从 1 变 0"在波形上就是一个下降沿。所以:
用下降沿触发的 T 触发器、令T=1(来一个时钟沿就翻),再把低位的Q接到高位的 CLK 端——低位一从 1 变 0,高位就收到一个下降沿而翻转。这就是异步二进制加法计数器。
它的连接极简单,不需要任何门电路。
图 3:下降沿动作的 3 位异步二进制加法计数器。上:连接方式(每级 T=1,Q 接下一级时钟);下:波形,每一级都比前一级晚一个传输延迟 tpd
5.2 加法还是减法?看"接哪个端、什么沿"#
- 加法:低位 1→0 时给高位一个触发沿。
- 减法:低位 0→1 时(低位是 0 再减 1,要借位)给高位一个触发沿。而Q从 0 变 1,就是Q从 1 变 0,也就是Q的下降沿。
于是有这张必背的表:
| 触发器动作沿 |
加法计数器:高位 CLK 接 |
减法计数器:高位 CLK 接 |
| 下降沿 |
低位Q |
低位Q |
| 上升沿 |
低位Q |
低位Q |
记法:先记"下降沿接 Q 是加法",其余三格每变一个条件就反过来。
5.3 例题 4:异步减法计数器的状态序列#
题:3 个下降沿触发的 T 触发器(T=1),FF0 的 CLK 接计数脉冲,FF1 的 CLK 接Q0,FF2 的 CLK 接Q1。初态 000,写出前 4 个脉冲后的状态。
解:
- 第 1 个脉冲下降沿:FF0 翻转,Q0:0→1。这时Q0:1→0,是下降沿 → FF1 翻转,Q1:0→1 → Q1出现下降沿 → FF2 翻转,Q2:0→1。状态Q2Q1Q0=111。
- 第 2 个:Q0:1→0,Q0是上升沿,FF1 不动 → 110。
- 第 3 个:Q0:0→1 → FF1 翻,Q1:1→0,Q1是上升沿,FF2 不动 → 101。
- 第 4 个:Q0:1→0 → 100。
序列000→111→110→101→100,正是 0, 7, 6, 5, 4,减法计数。✔(Python 模拟同样得到 7, 6, 5, 4, 3, 2, 1, 0, 7…)
5.4 异步计数器的两大缺点#
- 速度慢:最坏情况(例如 0111→1000)要一级一级传下去,新状态要经过所有触发器延迟之和才稳定。n级、每级延迟tpd,最坏要ntpd。
- 译码有毛刺:在"接力"的过程中,会短暂出现中间状态。例如011→100时,实际可能经过011→010→000→100。如果有门电路在"译码"某个状态,就可能在这些瞬间误输出一个窄脉冲(竞争-冒险,见第 12 讲)。
优点只有一个但很实在:结构简单。
六、异步十进制加法计数器#
6.1 思路#
在 4 位异步二进制计数器基础上,想办法让它数到 1001 后,第 10 个脉冲直接回 0000,跳过1010∼1111。
6.2 教材典型电路(图 6.3.27,即例 6.2.4 的电路)#
4 个下降沿 JK 触发器(TTL 电路,J、K 悬空相当于接 1):
- FF0:J0=K0=1,CLK 接计数脉冲;
- FF1:J1=Q3,K1=1,CLK 接Q0;
- FF2:J2=K2=1,CLK 接Q1;
- FF3:J3=Q1Q2,K3=1,CLK 接Q0;
- 进位C=Q0Q3。
6.3 例题 5:从物理过程直接分析第 8、9、10 个脉冲#
解:
- 前 7 个脉冲:Q3=0,所以J1=1,FF0~FF2 都是"T=1"的接力,和异步二进制一样;虽然Q0的下降沿也送到 FF3,但这时J3=Q1Q2只在 0111 时才为 1,之前J3=0、K3=1,FF3 保持 0。到第 7 个脉冲后状态 0111。
- 第 8 个脉冲:Q0:1→0(下降沿)。此刻(沿到来之前)J1=1,FF1:1→0;J3=Q1Q2=1、K3=1,FF3:0→1。Q1的下降沿又使 FF2:1→0。状态1000。
- 第 9 个脉冲:Q0:0→1(上升沿,FF1、FF3 不动)→ 1001。
- 第 10 个脉冲:Q0:1→0(下降沿)。此刻J1=Q3=0、K1=1,FF1 保持 0(置 0);J3=Q1Q2=0、K3=1,FF3 被置 0。状态0000。
于是0000→⋯→1001→0000,十进制。✔(Python 逐拍模拟核对一致,且 6 个无效状态都能回到有效循环。)
集成芯片 74LS290 就是按这个原理做的"二-五-十进制异步计数器":FF0 单独构成二进制,FF1~FF3 构成五进制,把它们串起来就是十进制;另有置 0 端和置 9 端。
七、同步 vs 异步:一张表对比#
| 对比项 |
同步计数器 |
异步计数器 |
| 时钟 |
所有触发器接同一个 CLK |
只有第一级接 CLK,其余接前级输出 |
| 翻转 |
同时 |
逐级、有先后 |
| 电路 |
需要与门等控制电路 |
二进制时可以不加任何门 |
| 速度 |
快(约一级触发器延迟 + 门延迟) |
慢(最坏ntpd) |
| 译码毛刺 |
少 |
容易出现 |
| 典型芯片 |
74HC161、74HC160、74HC191 |
74LS290、74HC393 |
速记卡#
| 类型 |
关键式子 / 规律 |
| 同步二进制加法(T 触发器) |
T0=1,Ti=Qi−1⋯Q0(低位全 1 才翻);C=Q0Q1⋯Qn−1 |
| 同步二进制减法 |
T0=1,Ti=Qi−1⋯Q0(低位全 0 才翻) |
| 可逆 |
用U/D在两组式子中选一组 |
| 同步十进制加法 |
T1=Q0Q3,T3=Q0Q1Q2+Q0Q3,C=Q0Q3,能自启动 |
| 模与容量 |
n位二进制:模2n,容量2n−1 |
| 分频 |
二进制计数器第i位输出频率f0/2i+1 |
| 异步接法 |
下降沿:加法接Q、减法接Q;上升沿反过来 |
| 异步缺点 |
慢(最坏ntpd)、译码毛刺 |
| 自启动 |
把所有无效状态代入,都能(直接或间接)进入有效循环才算 |
自测练习#
1. 4 位同步二进制加法计数器(T 触发器,驱动方程同正文)现态0111。来一个脉冲后状态是多少?哪些触发器翻转?
答案与提示
T0=1,T1=Q0=1,T2=Q0Q1=1,T3=Q0Q1Q2=1,四个触发器全部翻转,次态1000(7+1=8)。
2. 3 位同步二进制减法计数器初态101,写出连续 5 个脉冲后的状态序列。
答案与提示
101→100→011→010→001→000(5, 4, 3, 2, 1, 0)。逐拍用T1=Q0、T2=Q0Q1计算即可,已用 Python 模拟核对。
3. 4 位二进制计数器的计数脉冲频率为 16 kHz,Q3端输出信号的频率是多少?这个计数器的模和容量各是多少?
答案与提示
Q3是 16 分频:16 kHz/16=1 kHz。模 16,容量 15。
4. 用上升沿触发的 T 触发器(T=1)接成异步二进制加法计数器,高位的 CLK 应接低位的哪个输出端?如果改成减法呢?
答案与提示
上升沿:加法接Q(Q由 1 变 0 时Q出现上升沿),减法接Q。
5. 正文的同步十进制加法计数器上电后落在1100,经过几个脉冲进入有效循环?进入的是哪个状态?
答案与提示
1100→1101→0100,经过 2 个脉冲进入有效状态0100。
6. 一个 4 位异步二进制加法计数器,每个触发器的传输延迟tpd=10 ns。最坏情况下新状态要多久才稳定?如果要求每个计数脉冲周期内状态必须稳定,计数脉冲的周期至少约为多少、频率最高约为多少(只考虑触发器延迟)?
答案与提示
最坏是0111→1000或1111→0000这类四级都要翻的情况:4×10=40 ns。周期至少约40 ns,频率最高约1/40 ns=25 MHz(实际还要考虑建立时间、译码电路延迟等,会更低)。
7.(华师分析题风格) 某同步时序电路由 4 个 T 触发器组成,驱动方程为T0=1,T1=Q0Q3,T2=Q0Q1,T3=Q0Q1Q2+Q0Q3,输出C=Q0Q3。(1) 写出状态方程;(2) 画状态转换图;(3) 说明功能,能否自启动?
答案与提示
(1) 代入Q∗=T⊕Q:Q0∗=Q0,Q1∗=Q0Q3Q1+Q0Q3Q1,Q2∗=Q0Q1Q2+Q0Q1Q2,Q3∗=(Q0Q1Q2+Q0Q3)Q3+(Q0Q1Q2+Q0Q3)Q3。
(2) 有效循环0000→0001→⋯→1001→0000;无效状态1010→1011→0110,1100→1101→0100,1110→1111→0010(见图 2)。
(3) 同步十进制(8421 BCD)加法计数器,C为进位输出;所有无效状态都能回到有效循环,能自启动。
下一讲预告#
第 16 讲(中)我们把这些"自己搭"的计数器换成现成的集成芯片:读懂 74HC161、74HC160 的引脚和功能表——异步清零、同步置数、保持、计数,以及进位输出 C 怎么用、多片怎么级联。
👉 点击进入下一讲:第16讲(中)|集成计数器 74HC161 与 74HC160
评论
还没有评论。 来写第一条。