5.2 计数器 (Counter)

35

Click here to load reader

description

5.2 计数器 (Counter). 5.2.1 计数器的特点和分类. 一、计数器的功能及应用. 对时钟脉冲 CP 计数。. 1. 功能:. 分频、定时、产生节拍脉冲和脉冲 序列、进行数字运算等。. 2. 应用:. 二、计数器的特点. Moore 型. 计数脉冲 CP. 1. 输入信号:. 时钟触发器. 2. 主要组成单元:. 三、 计数器的分类. 二进制计数器 十进制计数器 N 进制 ( 任意进制 ) 计数器. 按数制分:. 加法计数器 减法计数器 可逆计数 (Up-Down Counter). 按计数 - PowerPoint PPT Presentation

Transcript of 5.2 计数器 (Counter)

Page 1: 5.2   计数器  (Counter)

5.2 5.2 计数器 计数器 (Counter)(Counter)

5.2.1 计数器的特点和分类一、计数器的功能及应用

1. 功能: 对时钟脉冲 CP 计数。2. 应用: 分频、定时、产生节拍脉冲和脉冲

序列、进行数字运算等。

二、计数器的特点1. 输入信号: 计数脉冲 CP Moore 型

2. 主要组成单元: 时钟触发器

Page 2: 5.2   计数器  (Counter)

三、 计数器的分类

按数制分: 二进制计数器十进制计数器N 进制 ( 任意进制 ) 计数器

按计数方式分:

加法计数器减法计数器可逆计数 (Up-Down Counter)

按时钟控制分:

同步计数器 (Synchronous )异步计数器 (Asynchronous )

按开关元件分:

TTL 计数器CMOS 计数器

Page 3: 5.2   计数器  (Counter)

5.2.2 5.2.2 二进制计数器二进制计数器计数器计数容量、长度或模的概念

计数器能够记忆输入脉冲的数目,即电路的有效状态数 M M 。

3 位二进制同步加法计数器:823 M

0000 1111

/1

4 位二进制同步加法计数器:

000 111

/1

1624 Mn 位二进制同步加法计数器:

nM 2

Page 4: 5.2   计数器  (Counter)

一、二进制同步计数器一、二进制同步计数器( 一 ) 3 3 位位二进制同步加法计数器

FF2 、 FF1 、 FF0Q2 、 Q1 、 Q0

设计方法一: 按前述设计步骤进行 ( P270 271 )设计方法二: 按计数规律进行级联

CP Q2Q1Q0 C

012345678

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 10 0 0

000000010

C = Q2n Q1

n Q0n

— Carry

向高位的进位

来一个 CP 翻转一

J0= K0 = 1

当 Q0=1 , CP 到来即翻

J1= K1 = Q0

当 Q1Q0=1 , CP 到来即翻转

J2= K2 = Q1Q0

= T0

= T1

= T2

n 位二进制同步加法计数器级联规律:

1-

00121

i

j

nj

nnni

nii QQQQQT

Page 5: 5.2   计数器  (Counter)

J0= K0 =1 J1= K1 = Q0 J2= K2 = Q1Q0

CP

1J

1KC1

FF0

11J

1KC1

FF1

1J

1KC1

FF2

& &

CQ0 Q1 Q2

Q0 Q1 Q2

串行进位触发器

负载均匀

CP

1J

1KC1

FF0

11J

1KC1

FF1

1J

1KC1

FF2

&&

C

Q0 Q1 Q2

Q0 Q1 Q2

并行进位

低位触发器负载重

Page 6: 5.2   计数器  (Counter)

B = Q2n Q1

n Q0nBorrow

若用 T 触发器:

( 二 ) 3 3 位位二进制同步减法计数器CP Q2Q1Q0 B

01234567

0 0 01 1 11 1 01 0 11 0 00 1 10 1 00 0 1

10000000

012 FF FF FF 、、

012 QQQ 、、

— 向高位发出的借位信号

T0 = 1 T1=Q0n T2= Q1

n Q0n

级联规律:

1-

00121

i

j

nj

nnni

nii QQQQQT

CP

1J

1K

C1

FF0

11J

1K

C1

FF1

1J

1K

C1

FF1

& &

BQ0 Q1 Q2

Q0 Q1Q2

Page 7: 5.2   计数器  (Counter)

( 三 ) 二进制同步可逆计数器单时钟输入二进制同步可逆计数器加 / 减控制端

0/ DU 加计数 T0 = 1 、 T1= Q0n 、 T2 = Q1

nQ0n

/ 012nnn QQQBC

1/ DU 减计数 T0 = 1 、 T1= Q0n 、 T2= Q1

nQ0n

nnn QQQBC 012 /

CP

Q0

1J

1KC1

FF0

1

Q0

Q2

1J

1KC1

FF2Q2

Q1

1J

1KC1

FF1Q1

U / D 1

& 1 & 1 & 1

C/B

Page 8: 5.2   计数器  (Counter)

双时钟输入二进制同步可逆计数器

加计数脉冲

减计数脉冲

CP0= CPU+ CPD

CP1= CPU ·Q0n

+ CPD · Q0n

CP2= CPU · Q1n Q0

n + CPD · Q1

n Q0n

CPU 和 CPD 互相排斥CPU = CP , CPD= 0CPD= CP , CPU= 0

CPU

Q01J

1K

C1

FF01

Q0

Q21J

1K

C1

FF21

Q2

Q11J

1K

C1

FF11

Q1

1

&

1

&

1

CPD

Page 9: 5.2   计数器  (Counter)

( 四 ) 集成二进制同步计数器1. 集成 4 位二进制同步加法计数器

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

74161(3)74161(3)

VCC CO Q0 Q1 Q2 Q3 CTT LD

CR CP D0 D1 D2 D3 CTP 地

引脚排列图 逻辑功能示意图

7416174161

Q0 Q1 Q2 Q3

CTTLD

CO

CP

CTP

CR D0 D1 D2 D3

0 0 0 0

0 0 1 1

0 0 1 1

CR = 0 Q3 Q0 = 0000

同步并行置数 CR=1 , LD=0 , CP

异步清零Q3 Q0 = D3 D0

1) 74LS161 和 74LS163

Page 10: 5.2   计数器  (Counter)

74161 的状态表 输 入 输 出 注CR LD CTP CTT CP D3 D2 D1 D0 Q3

n+1 Q2n+1 Q1

n+1 Q0n+1CO

0

1 0 d3 d2 d1d0

1 1 1 1 1 1 0 1 1 0

0 0 0 0 0

d3 d2 d1 d0

计 数 保 持 保 持 0

清零置数

CR = 1, LD = 1, CP ,CTP = CTT = 1 二进制同步加法计数CTPCTT = 0CR = 1 , LD = 1 , 保持

若 CTT = 0 CO = 0若 CTT = 1 nnnn QQQQCO 0123

74163

Page 11: 5.2   计数器  (Counter)

2) CC4520VDD 2CR 2Q32Q22Q12Q02EN2CP

1CP1EN1Q0 1Q1 1Q1Q31CR VSS

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

CC4520CC4520 CC4520CC4520

Q0 Q1 Q2 Q3

EN CP CR

21

使能端也可作计数脉冲输入

计数脉冲输入也可作使能端

异步清零

输 入 输 出CR EN CP Q3

n+1 Q2n+1 Q1

n+1 Q0n+1

1 0 1 0 0 0 0 0 1

0 0 0 0加 计 数加 计 数

保 持 保 持

Page 12: 5.2   计数器  (Counter)

2. 集成 4 位二进制同步可逆计数器1) 74191 (单时钟)

7419174191

Q0 Q1 Q2 Q3

U/D

LD

CO/BO

CP

CT

D0 D1 D2 D3

RC

加计数时 CO/BO= Q3

nQ2nQ1

nQ0n

并行异步置数

减计数时 CO/BO= Q3

nQ2nQ1

nQ0nCT = 1,CO/BO = 1 时,

CPRC

CTBOCOCPRC /

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

7419174191

D1 Q1 Q0 CT U/D Q2 Q3 地

VCC D0 CP RC CO/BO LD D2 D3

LD CT U/D CP D3 D2 D1 D0 Q3n+1 Q2

n+1 Q1n+1 Q0

n+1

0 d3 d2 d1 d0

1 0 0 1 0 1 1 1

d3 d2 d1 d0

加 法 计 数 减 法 计 数 保 持

Page 13: 5.2   计数器  (Counter)

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

7419374193

D1 Q1 Q0 CPD CPU Q2 Q3 地

VCC D0 CR BO CO LD D2 D3

2) 74193( 双时钟 )

CO7419374193

Q0 Q1 Q2 Q3

LD

CPU

CR

D0 D1 D2 D3

BO

CPD

CR LD CPU CPD D3 D2 D1 D0 Q3n+1 Q2

n+1 Q1n+1 Q0

n+1 注 1

0 0 d3 d2 d1

d0

0 1 1 0 1 1 0 1 1 1

0 0 0 0

d3 d2 d1 d0

加 法 计 数 减 法 计 数 保 持

异步清零异步置数

BO =CO=1

Page 14: 5.2   计数器  (Counter)

二、二进制异步计数器二、二进制异步计数器( 一 ) 二进制异步加法计数器

CPQ0

Q1

Q2

CP0 = CPCP1 = Q0CP2 = Q1

用 T 触发器 (J = K = 1)下降沿触发C = Q2

n Q1n Q0

n

1

Q0

1J

1K

C1

FF0

Q0

Q1

1J

1K

C1

FF1

Q11

Q2

1J

1K

C1

FF2

Q21

C

CP

&并行进位

若采用上升沿触发的 T 触发器

CP0= CP

CP1=Q0

CP2=Q1

Page 15: 5.2   计数器  (Counter)

D 触发器构成的 T 触发器 ( D = Q ) , —— 下降沿触发

若改用上升沿触发的 D 触发器?

Q0 Q1

CPCP

FF1 FF2

C11D

C11D

Q2

FF0

C11D

Q1

Q2

&

Q0

CCQ0 Q1

CPCP

FF1 FF2

C11D

C11D

Q2

FF0

C11D

Q1

Q2

&

Q0

CC

Page 16: 5.2   计数器  (Counter)

( 二 ) 二进制异步减法计数器CP Q2Q1Q0

012345678

0 0 01 1 11 1 01 0 11 0 00 1 10 1 00 0 10 0 0

用 T 触发器 (J = K = 1) 上升沿触发

CP0= CPCP1= Q0

CP2= Q1

B = Q2n Q1

n Q0n

二进制异步计数器级间连接规律

计数规律 T 触发器的触发沿上升沿 下降沿

加法计数 CPi = Qi-1 CPi = Qi-1

减法计数 CPi = Qi-1 CPi = Qi-1

1

Q0

1J

1K

C1

FF0

Q0

Q1

1J

1K

C1

FF1

Q11

Q2

1J

1K

C1

FF2

Q21 BCP

&

Page 17: 5.2   计数器  (Counter)

1 2 3 4 5 6 7

14 13 12 11 10 9 8

7419774197

CT/LD Q2 D2 D0 Q0 CP1 地

VCC CR Q3 D3 D1 Q1 CP0

7419774197

Q0 Q1 Q2 Q3

CR

CP1

D0 D1 D2 D3

CP0

CT/LD

( 三 ) 集成二进制异步计数器 74197 、 74LS197

计数 / 置数

异步清零 0CR 0000~ 30 QQ

异步置数 1CR0/ LDCT ~~ 3030 DDQQ

加法计数 1CR1/ LDCT

二 — 八 — 十六进制计数

Page 18: 5.2   计数器  (Counter)

二 - 八 - 十六进制计数器的实现

M = 2 CPCP 0 计数输出: 0Q

M = 8 CPCP 1 计数输出: 1 23 QQQ

Q1

Q1

Q2

1J

1KC1

FF2

Q21

Q3

1J

1KC1

FF3

Q311

1J

1KC1

FF1

CP1CP0

1

1J

1KC1

FF0Q0

Q0

M = 16 010 , QCPCPCP 计数输出: 0 1 23 QQQQ

其它: 74177 、 74LS177 、 74293 、 74LS293 等。301 , QCPCPCP 1 2 30 QQQQ

Page 19: 5.2   计数器  (Counter)

5.2.3 5.2.3 十进制计数器十进制计数器( 8421BCD 码)一、十进制同步计数器一、十进制同步计数器( 一 ) 十进制同步加法计数器

0123 QQQQ0000 0001

/00010

/00011

/00100/0

0101/0

0110/0

011110001001/0/0/0/1

状态图状态图

时钟方程时钟方程

输出方程输出方程0000

0000Q3

nQ2n

Q1nQ0

n

00 01 11 10

10

00

01

11

10

C

CPCPCPCPCP

3

210

nnQQC 03

Page 20: 5.2   计数器  (Counter)

CP1K

C1

FF2

& 1J

C1J

1KC1

FF0

1KC1

FF3

& 1J1

&Q1Q0

1KC1

FF1

& 1J

&

Q2 Q3

Q3

Q1nQ0

n

Q3nQ2

n 00 01 11 10

00

01

11

10

Q3n+1 Q2

n+1 Q1n+1 Q0

n+1

0 0 0 1

0 1 0 1

1 0 0 1 0 0 0 0

0 0 1 0

0 1 1 0

0 1 0 0

1 0 0 0

0 0 1 1

0 1 1 1

nn QQ 01

0

nnnnnn QQQQQQ 010131

1

nn

nnnnnn

QQ

QQQQQQ

02

120121

2

nnnnnn QQQQQQ 030121

3

状态方程

选择下降沿、 JK 触发器

驱动方程

J0 = K0 = 1,

J1= Q3nQ0

n, K1= Q0

J2 = K2 = Q1nQ0

n

J3 = Q2nQ1

nQ0n , K3 = Q0

n

逻辑图

检查能否自启动将无效状态 1010 1111代入状态方程:1010 1011 01001110 1111 10001100 1011 0100

能自启动

nnQQC 03

Page 21: 5.2   计数器  (Counter)

( 二 ) 十进制同步减法计数器

0000 1001/1

1000/0

0111/0

0110/0

0101

/0

0100/0

001100100001/0/0/0/0 ( 略 )

( 三 ) 十进制同步可逆计数器 ( 略 )

Page 22: 5.2   计数器  (Counter)

( 四 ) 集成十进制同步计数器74160 、 74162

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

7416074160(2)(2)

VCC CO Q0 Q1 Q2 Q3 CTT LD

CR CP D0 D1 D2 D3 CTP 地

( 引脚排列与 74161 相同 )

异步清零功能异步清零功能:: 0CR(74162 同步清零 )同步置数功能同步置数功能::

1CR 0LD CP

同步计数功能:同步计数功能:1LDCR

1PT CTCTnnQQCO 03

保持功能保持功能::

nnQQCTCO 03T 0PT CTCT

1T CT 进位信号保持0T CT 进位输出低电平

1. 集成十进制同步加法计数器

Page 23: 5.2   计数器  (Counter)

2. 集成十进制同步可逆计数器(1) 74190 ( 单时钟,引脚与 74191 相同 )

异步并行置数功能:异步并行置数功能:0LD

~~ 3030 DDQQ

同步可逆计数功能:同步可逆计数功能:

1LD 0CT

0/ DU 加法计数1/ DU 减法计数

nnQQBOCO 03/ nnnn QQQQBOCO 0123 /

保持功能:保持功能: 1LD 1CT

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

7419174191

D1 Q1 Q0 CT U/D Q2 Q3 地

VCC D0 CP RC CO/BO LD D2 D3

Page 24: 5.2   计数器  (Counter)

(2) 74192 ( 双时钟,引脚与 74193 相同 )

1 2 3 4 5 6 7 8

16 15 14 13 12 11 10 9

7419374193

D1 Q1 Q0 CPD CPU Q2 Q3 地

VCC D0 CR BO CO LD D2 D3 异步清零功能:异步清零功能: 1CR

异步置数功能:异步置数功能:0LD

3030 D~DQ~Q 0CR

同步可逆计数功能:同步可逆计数功能:1LD0CR

1 DU CP,CP 加法计数

1 UD CP,CP

nnU QQCPCO 03

减法计数 nnnnD QQQQCPBO 0123

保持功能保持功能1LD0CR 1 DU CPCP

Page 25: 5.2   计数器  (Counter)

1 2 3 4 5 6 7

14 13 12 11 10 9 8

7429074290

S9A S9B Q2 Q1 地

VCC R0B R0A CP1 CP0Q0 Q3

二二 ** 、十进制异步计数器、十进制异步计数器( 三 ) 集成十进制异步计数器

异步清零功能异步清零功能

S9A S9B

Q0 Q1 Q2 Q3

R0B R0A

M1

=2M1 = 5

CP0

CP1

1 1

0 0 0 0

异步置“异步置“ 9”9” 功能功能

1 1

1 0 0 1

异步计数功能异步计数功能

M = 2 CPCP 00Q

M = 5 CPCP 11 23 QQQ

M = 10

CP

010 , QCPCPCP 01 23 QQQQ

301 , QCPCPCP 1 230 QQQQ

CPCP

CP

Page 26: 5.2   计数器  (Counter)

1 2 3 4 5 6 7

14 13 12 11 10 9 8

7429074290

S9A S9B Q2 Q1 地

VCC R0B R0A CP1 CP0Q0 Q3

二二 ** 、十进制异步计数器、十进制异步计数器( 三 ) 集成十进制异步计数器

异步清零功能异步清零功能

S9A S9B

Q0 Q1 Q2 Q3

R0B R0A

M1

=2M1 = 5

CP0

CP1

1 1

0 0 0 0

异步置“异步置“ 9”9” 功能功能

1 1

1 0 0 1

异步计数功能异步计数功能

M = 2 CPCP 0 0Q

M = 5 CPCP 1 1 23 QQQ

M = 10

CP

010 , QCPCPCP 01 23 QQQQ

301 , QCPCPCP 1 230 QQQQ

CPCP

CP

Page 27: 5.2   计数器  (Counter)

5.2.4 5.2.4 N N 进制计数器进制计数器

方法 用触发器和门电路设计用集成计数器构成

)102( 4 MM 或

清零端置数端

( 同步、异步 )

同步置数

异步清零

六进制计数器七进制计数器

[ 例 ] 利用 EWB 观察同步和异步归零的区别。

Page 28: 5.2   计数器  (Counter)

一、利用同步清零或置数端获得 N 进制计数思 路:思 路:当 M 进制计数到 SN –1 后使计数回到 S0 状态

2. 求归零逻辑表达式;1. 写出状态 SN –1 的二进制代码;

3. 画连线图。

步 骤:步 骤:

[ 例 ] 用 4 位二进制计数器 74163 构成十二进制计数器。解:1.

013 QQQCR

111 SSN

013 QQQLD 或

= 1011

2. 归零表达式:

3. 连线图

7416374163

Q0 Q1 Q2 Q3

CTTLDCO

CP

CTP

D0 D1 D2 D3

CR

1 &

同步清零同步置零

Page 29: 5.2   计数器  (Counter)

二、利用异步清零或置数端获得 N 进制计数 当计数到 SN 时,立即产生清零或置数信号, 使返回 S0 状态。(瞬间即逝)

思 路:思 路:

步 骤:步 骤:1. 写出状态 SN 的二进制代码;2. 求归零逻辑表达式;3. 画连线图。

[ 例 ] 用二 - 八 - 十六进制异步计数器 74197 构成十二进制计数器。110012 S

23QQCR

23QQLD 或7419774197

Q0 Q1 Q2 Q3

CP0

D0 D1 D2 D3

CRCPCP

CP1

LDCT/ &

状态 S12 的作用:产生归零信号 异步清零

异步置零

Page 30: 5.2   计数器  (Counter)

( 一 ) 归零法存在的问题和解决办法 各触发器的动态特性和带负载情况不尽相同,且有随机干扰信号,造成有的触发器已归零,有的不能归零。

7416174161Q0 Q1 Q2 Q3

CTTLD

CO

CP

CTP

D0 D1 D2 D3CR

11

&

1 1

0

0

1

一种提高归零可靠性的方法

&&

Q Q

S R

计到 S12 = 1100 前: 1,00,1 QQCPRS

1 0

10

1

计到 S12 = 1100 时 () : 0110 Q,QCPR,S

1 10

1 0

0

01

CP = 0 之后:

0

1

1

0

1001 Q,QCPR,S

0有足够的时间归零

三、提高归零可靠性和计数容量的扩展

思路:用 RS 触发器暂存清零信号,保证有足够的归零时间。

Page 31: 5.2   计数器  (Counter)

( 二 ) 计数容量的扩展1. 集成计数器的级联

7416174161((11))

Q0 Q1 Q2 Q3

CTT LD

CO

CP

CTP

D0 D1 D2 D3

CR

Q4 Q5 Q6 Q7

7416174161((00))

Q0 Q1 Q2 Q3

CTT LD

CO

CP

CTP

D0 D1 D2 D3

CR

Q0 Q1 Q2 Q3

CP

111

11

CO0

16 16

= 256

7429074290(( 个位个位 )) Q0 Q1 Q2 Q3

S9A S9B R0B R0ACP0

CP1

CPCP74290 74290 (( 十十位位 ))

Q0 Q1 Q2 Q3

S9A S9B R0B R0ACP0

CP1

Q0 Q1 Q2 Q3 Q0 Q1 Q2 Q3

1 2 4 8 10 20 40 80 10

10

= 100

Page 32: 5.2   计数器  (Counter)

2. 利用级联获得大容量 N 进制计数器1) 级联 N1 和 N2 进制计数器,容量扩展为 N1 N

2 N1 进制计数器

N2 进制计数器CP

进位 C

CP

[ 例 ]用 用 74290 74290 构成 构成 六十六十 进制计数 进制计数器器

7429074290

Q0 Q1 Q2 Q3

S9A S9B R0B R0ACP0

CP1CPCP 7429074290

Q0 Q1 Q2 Q3

S9A S9B R0B R0ACP0

CP1

Q0 Q1 Q2 Q3 Q0 Q1 Q2 Q3N1= 10 N2 = 6

个位个位 十位十位

异步清零异步清零

个位芯片应逢十进一

60 = 6 60 = 6 10 10 = N= N1 1 NN2 2 = = N N

Page 33: 5.2   计数器  (Counter)

2) 用归零法或置数法获得大容量的 N 进制计数器[ 例 ] 试分别用 74161 和 74162 接成六十进制计数器。

Q0 Q1 Q2 Q3

CTT LDCO

CP

CTP

D0 D1 D2 D3

CR

Q4 Q5 Q6 Q7

7416174161(0)(0)

Q0 Q1 Q2 Q3

CT

T

LD

CO

CP

CTP

D0 D1 D2 D3

CR

Q0 Q1 Q2 Q3

CP

111

CO0

7416174161(1)(1)

用 SSNN 产生异步清零异步清零信号: ) 111100 (60 SSN

用 SSNN––1 1 产生同步置数同步置数信号: ) 111011 (591 SSN

&

11

&

先用两片 74161 构成 256 进制计数器

Page 34: 5.2   计数器  (Counter)

74162 — 同步清零,同步置数同步清零,同步置数。

再用归零法将 M = 100 改为 N = 60 进制计数器,即用 SN–1 产生同步清零、置数信号。

BCD591 1001 0101 )( SSN

先用两片 74162 构成 1010 进制计数器,

Q0 Q1 Q2 Q3

CTT LDCO

CP

CTP

D0 D1 D2 D3

CR

Q4 Q5 Q6 Q7

7416274162(0)(0)

Q0 Q1 Q2 Q3

CTT LD

CO

CP

CTP

D0 D1 D2 D3

CR

Q0 Q1 Q2 Q3

CP

111

CO0

7416274162(1)(1) 1

1

&

11

Page 35: 5.2   计数器  (Counter)

1. 同步 同步 清零 ( 或置数 ) 端计数终值为 SSNN––11

异步 异步 清零 ( 或置数 ) 端计数终值为 SSNN

2. 用集成 二进制 二进制 计数器扩展容量后, 终值 SN ( 或 SN–1 ) 是二进制代码二进制代码;

用集成十进制十进制计数器扩展容量后,终值 SN ( 或 SN–1 ) 的代码由个位、十位、百位的十进制数十进制数对应的 BCD BCD 代码代码构成。

注意