文章目录
一、计数器
1. 计数器概念和分类
计数: 累计输入脉冲的个数构成:
- 1 1 1 个触发器有 2 2 2 个状态,可计 2 2 2 个数( 1 1 1 位二进制数)
- n n n 个触发器有 2 n 2^n 2n 个状态,可计 2 n 2^n 2n 个数( n n n 位二进制数)
应用:分频、定时、产生节拍脉冲和脉冲序列、进行数字运算等.
分类如下:
按数制分:
- 二进制计数器
- 十进制计数器
- N N N 进制(任意进制)
计数器按计数方式分:
- 加法计数器
- 减法计数器
- 可逆计数 (
Up-Down Counter
,既能够做加法也能够做减法)
按时钟控制分:
- 同步计数器 (
Synchronous
) - 异步计数器 (
Asynchronous
)
我们的重点在于同步集成计数器。同步计数器的特点:在同步计数器内部, 各个触发器都受同一时钟脉冲——输入计数脉冲(计数就是统计累计输入脉冲的个数)的控制, 因此, 它们状态的更新几乎是同时的, 故被称为 “同步计数器”。
下面就将介绍常用的同步计数器。
2. 双时钟可逆十六进制计数器74LS193
(1) 74LS193的引脚示意图和逻辑功能图
双时钟是指存在两个时钟信号,可逆指的是既可以做加法计数,也可以做减法计数。
为了使用74LS193,我们必须掌握其引脚的功能:
Vcc
:外接电源;GND
:接地;- C P D CP_D CPD :减法(down)脉冲输入信号;
- C P U CP_U CPU :加法(up)脉冲输入信号;
- C O ‾ \overline {CO} CO :进位输出端,carry output,多个74LS193级联的时候有用处;
- B O ‾ \overline {BO} BO :借位输出端,borrow output,多个74LS193级联的时候有用处;
- D 3 D 2 D 1 D 0 D_3D_2D_1D_0 D3D2D1D0 :外部输入数据,用于异步置数;
- Q 3 Q 2 Q 1 Q 0 Q_3Q_2Q_1Q_0 Q3Q2Q1Q0 :计数器输出数据;
- C R CR CR :异步清零端;
- L D ‾ \overline {LD} LD :异步置数控制端;
(2) 74LS193 的逻辑功能表

- C R = 1 CR=1 CR=1 时,异步清零,计数器输出数据 Q 3 Q 2 Q 1 Q 0 Q_3Q_2Q_1Q_0 Q3Q2Q1Q0 为 0000 0000 0000;
- C R = 0 , L D ‾ = 0 CR=0,\overline {LD}=0 CR=0,LD=0时,异步置数 Q 3 Q 2 Q 1 Q 0 Q_3Q_2Q_1Q_0 Q3Q2Q1Q0 为 D 3 D 2 D 1 D 0 D_3D_2D_1D_0 D3D2D1D0 ;
- C R = 0 , L D ‾ = 1 CR=0,\overline {LD}=1 CR=0,LD=1,既不清零也不置数,此时如果 C P U ↑ CP_{U} \uparrow CPU↑ 且 C P D = 0 CP_D = 0 CPD=0 时,加 1 1 1 计数;当加法计数到达
1111
时,进位输出 C O ‾ \overline {CO} CO 输出一个脉宽等于 C P U CP_{U} CPU 的低电平部分的低电平脉冲;当下一个 C P U CP_{U} CPU 上升沿到来时, C O ‾ \overline {CO} CO 变为高电平,由此产生一个 C O ‾ \overline {CO} CO 的上升沿;多个74LS193级联时,正好将低位的 C O ‾ \overline {CO} CO 端与高位的 C P U CP_{U} CPU 端连接起来; - C R = 0 , L D ‾ = 1 CR=0,\overline {LD}=1 CR=0,LD=1,既不清零也不置数,此时如果 C P D ↑ CP_D \uparrow CPD↑ 且 C P U = 0 CP_U = 0 CPU=0 时,减 1 1 1 计数;当减法计数到达
0000
时,借位输出 B O ‾ \overline {BO} BO 输出一个脉宽等于 C P U CP_{U} CPU 的低电平部分的低电平脉冲;当下一个 C P D CP_{D} CPD 上升沿到来时, B O ‾ \overline {BO} BO 变为高电平,由此产生一个 B O ‾ \overline {BO} BO 的上升沿;多个74LS193级联时,正好将低位的 B O ‾ \overline {BO} BO 端与高位的 C P D CP_{D} CPD 端连接起来; - C R = 0 , L D ‾ = 1 CR=0,\overline {LD}=1 CR=0,LD=1,且 C P D , C P U CP_D,CP_U CPD,CPU 均无变化时,状态保持。
3. 用集成计数器实现任意进制计数
若已有 N N N 进制计数器,现在要实现 M M M 进制计数器:
M < N
:反馈清零法或反馈置数法M > N
:多个芯片级联
(1) 反馈清零法和反馈置数法 (M < N)
在 N N N 进制计数器的顺序计数过程中, 若设法使之跳过 N − M N - M N−M 个状态 , 就可以得
到 M M M 进制计数器 , 其方法有清零法(复位法)和置数法(置位法)。注意,两种方法的使用是有条件的。
a. 反馈清零法
清零法 适用于有清零输入端(异步
或 同步
)的计数器。例如74LS193。
异步清零法和同步清零法存在一些差异,但基本思想都是:计数器从全 0 0 0 状态 S 0 S_0 S0 开始计数,计满 M M M 个状态后产生清零信号,使计数器恢复到初态 S 0 S_0 S0 ,然后再重复上述过程。
反馈清零法-异步清零: S M S_M SM 状态进行译码产生置零信号并反馈到异步清零端,74LS193中是 C R CR CR ,使计数器立即返回 S 0 S_0 S0 状态。 S M S_M SM 状态只在极短的瞬间出现,通常称它为“暂态”。
步骤:
(1) 写出状态 S M S_M SM 的二进制代码;
(2) 求归零逻辑: S M