控制寄存器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图7.7(a) 方式3 计数值为偶数时的波形
CW = 16 WR
LSB = 5
CLK GATE
OUT
5 4 3 2 1 5 4 3 21
b. 方式3 计数值为奇数时的波形
若计数为奇数,第一个CLK脉冲使计数值减1,其后,每一个 CLK脉冲使计数器减2,当计到0时,输出改变状态,重新装入 计数值,这以后的第一个CLK脉冲使计数器减3,以后每个 CLK脉冲,计数器仍减2,直到计数器再次到0,输出恢复为高
图7.7(b) 方式3 计数值为奇数时的波形
CW = 16 LSB = 4 WR
CLK GATE
OUT
4 3 2 1 4 4 4321
c. 方式3 GATE信号的作用
GATE信号使计数过程重新开始。若OUT为低期间, GATE=0,OUT将立即变高,停止计数。当GATE=1后 ,计数重新开始。
图7.7(c) 方式3 GATE信号的作用
8253具有较好的通用性和使用灵活性,几乎适合于 任何一种微处理器组成的系统。
2. 8253的内部结构
8253的内部结构如图7.1所示,由数据总线缓冲器、 控制寄存器、读/写控制逻辑和计数器等部分组成。
图7.1 8253的内部结构示意图
7.2.2 8253的引脚信号
8253 是一片具 有3个独立 通道的16 位计数器/ 定时器芯 片,使用 单一+5V 电源,24 引脚双列 直插式封 装,如图 7.3所示
(3)控制寄存器
接收从CPU来的控制字,并由控制字的D7、D6位的 编码决定该控制字写入哪个计数器的控制寄存器,控制 寄存器只能写入,不能读出。
(4)计数器
当8253用作计数器时,加在CLK引脚上脉冲的间隔 可以是不相等的;当它用作定时器时,则在CLK引脚应 输入精确的时钟脉冲,8253所能实现的定时时间,取决 于计数脉冲的频率和计数器的初值,即:定时时间=时 钟脉冲周期Tc×预置的计数初值n。
7.2 8253的控制字
❖ 在8253的初始化编程中,由CPU向 8253的控制字寄存器写入一个控制字, 它规定了8253的工作方式。其格式如图
工作方式小结:
1.计数条件:0234置完数就可计数,15GATE 有一个上升沿才开始计数
2.连续性,23连续计数,0145单次计数
3.GATE电平影响:GATE=0时,0234停止计数, 15继续计数,不受影响,GATE恢复为1时, 0继续计数,12345重新计数
计数期间,重新计数,下一次按新数计数 计数期间,若GATE为低电平,停止计数, 若GATE恢复高电平,重新开始计数 用途:作为脉冲速率发生器或用于产生实时 时钟中断
CW = 14 LSB = 3 WR
CLK GATE
OUT
321 321 3
a. 方式2 正常计数
•当写入CW控制字后,OUT输出为高。 •在写入计数值后,立即计数。 •计数器减到1时,输出变低,经过一个CLK周期,输 出恢复为高,计数器重新计数。输出固定频率的脉冲
4.OUT波形:245计满后输出一个负脉冲,01 计数过程中为低电平,计满为高电平,3前半 周期为高电平,后半周期为低电平
3. 方式2 —— 周期性负脉冲输出 (比率发生器,计满后,连续计数)
计 数 期 间 , OUT 为 高 电 平 , 当 计 数 至 1 时 , OUT输出一个负脉冲,计满后继续计数
对8253来讲,外部输入到CLK引脚上的时钟脉冲频 率不能大于2MHZ,否则需分频后才能送到CLK端。
7.2 Intel 8253可编程定时器/计数器
7.2.1 8253的基本功能和内部结构
1. 8253 的基本功能
(1)3个独立的16位计数器,最大计数范围为0~65535;
(2)每个计数器均可以按二进制或二—十进制计数; (3)计数器速率可达2MHz; (4)可编程6种不同的工作方式; (5)所有输入和输出都与TTL兼容。
CW = 16 WR
LSB = 4
CLK GATE
OUT
4 3 2 1 43 2 14 3
•写入CW后,输出a为. 方高式,3 计置数值数为后偶数 自时动的计波形数,计数到一半时, 输出变为低,直到计数为0,输出又变为高,重新开始计数
•若计数为偶数,每一个CLK脉冲使计数值减2,当计到0时, 输出改变状态,重新装入计数值开始新的计数。
CW = 16 WR
LSB = 5
LSB = 4
CLK GATE
OUT
543 21 4 3 d. 方式3 计数过程中改变计数值
计数期间写入一个新值,新值在现行半周期结束时装 入计数器。
图7.6(a) 方式2 正常计数
CW = 14 LSB = 3 WR
CLK GATE
OUT 32 23 2 13
计数期间,若GAbT.E方为式低2 电GAT平E信,号停的止作用计数,若 GATE恢复高电平,重新开始计数
图7.6(b) 方式2时GATE信号的作用
计数值改变不影响正在进行的计数过程 改变的计数值是下次有效的
图7.6(c) 方式2时计数过程中改变计数值
❖ 例:若要使计数器2工作于方式2,按二进制 计数,计数值为02F0H,则初始化程序:
MOV OUT MOV OUT MOV OUT
AL,0B4H
;写入控制字
07H,AL
AL,0F0H
06H,AL ;写计数值低8位
AL,02H
06H,AL ;写计数值高8位
4. 方式3 —— 方波发生器 (周期性方波输出)
方式3的工作过程同方式2,只是输出的脉宽不同
• 置完数,GATE为高电平时就开始计数,计数中, 前一半OUT为高电平,后一半OUT为低电平
• 置的数为奇数时,前一半〉后一半一个时钟周期
• 计满后,连续计数
• GATE信号使计数过程重新开始。若OUT为低期 间 , GATE=0,OUT 将 立 即 变 高 , 停 止 计 数 。 当 GATE=1后,计数重新开始。
D0
D1
数
D2
据
D3
线
D4 D5
D6
D7
RD
控 WR
制 线
A1 A0
CS
电
源
VCC
线 GND
8 7
9
CLK0 计
ቤተ መጻሕፍቲ ባይዱ
数
6 5
11
GATE0 器
4
10
OUT0
0
3
2 1
15
CLK1 计
14
GATE1
数 器
22
13
OUT1
1
23
20
19
18
CLK2 计
21
16
GATE2
数 器
24 12
17
OUT2
2
图8-3 82图537的-3 引8脚25信3P号IT管脚图
CW = 16 WR
LSB = 5
CLK GATE
OUT
5 4 3 2 1 5 4 3 21
b. 方式3 计数值为奇数时的波形
若计数为奇数,第一个CLK脉冲使计数值减1,其后,每一个 CLK脉冲使计数器减2,当计到0时,输出改变状态,重新装入 计数值,这以后的第一个CLK脉冲使计数器减3,以后每个 CLK脉冲,计数器仍减2,直到计数器再次到0,输出恢复为高
图7.7(b) 方式3 计数值为奇数时的波形
CW = 16 LSB = 4 WR
CLK GATE
OUT
4 3 2 1 4 4 4321
c. 方式3 GATE信号的作用
GATE信号使计数过程重新开始。若OUT为低期间, GATE=0,OUT将立即变高,停止计数。当GATE=1后 ,计数重新开始。
图7.7(c) 方式3 GATE信号的作用
8253具有较好的通用性和使用灵活性,几乎适合于 任何一种微处理器组成的系统。
2. 8253的内部结构
8253的内部结构如图7.1所示,由数据总线缓冲器、 控制寄存器、读/写控制逻辑和计数器等部分组成。
图7.1 8253的内部结构示意图
7.2.2 8253的引脚信号
8253 是一片具 有3个独立 通道的16 位计数器/ 定时器芯 片,使用 单一+5V 电源,24 引脚双列 直插式封 装,如图 7.3所示
(3)控制寄存器
接收从CPU来的控制字,并由控制字的D7、D6位的 编码决定该控制字写入哪个计数器的控制寄存器,控制 寄存器只能写入,不能读出。
(4)计数器
当8253用作计数器时,加在CLK引脚上脉冲的间隔 可以是不相等的;当它用作定时器时,则在CLK引脚应 输入精确的时钟脉冲,8253所能实现的定时时间,取决 于计数脉冲的频率和计数器的初值,即:定时时间=时 钟脉冲周期Tc×预置的计数初值n。
7.2 8253的控制字
❖ 在8253的初始化编程中,由CPU向 8253的控制字寄存器写入一个控制字, 它规定了8253的工作方式。其格式如图
工作方式小结:
1.计数条件:0234置完数就可计数,15GATE 有一个上升沿才开始计数
2.连续性,23连续计数,0145单次计数
3.GATE电平影响:GATE=0时,0234停止计数, 15继续计数,不受影响,GATE恢复为1时, 0继续计数,12345重新计数
计数期间,重新计数,下一次按新数计数 计数期间,若GATE为低电平,停止计数, 若GATE恢复高电平,重新开始计数 用途:作为脉冲速率发生器或用于产生实时 时钟中断
CW = 14 LSB = 3 WR
CLK GATE
OUT
321 321 3
a. 方式2 正常计数
•当写入CW控制字后,OUT输出为高。 •在写入计数值后,立即计数。 •计数器减到1时,输出变低,经过一个CLK周期,输 出恢复为高,计数器重新计数。输出固定频率的脉冲
4.OUT波形:245计满后输出一个负脉冲,01 计数过程中为低电平,计满为高电平,3前半 周期为高电平,后半周期为低电平
3. 方式2 —— 周期性负脉冲输出 (比率发生器,计满后,连续计数)
计 数 期 间 , OUT 为 高 电 平 , 当 计 数 至 1 时 , OUT输出一个负脉冲,计满后继续计数
对8253来讲,外部输入到CLK引脚上的时钟脉冲频 率不能大于2MHZ,否则需分频后才能送到CLK端。
7.2 Intel 8253可编程定时器/计数器
7.2.1 8253的基本功能和内部结构
1. 8253 的基本功能
(1)3个独立的16位计数器,最大计数范围为0~65535;
(2)每个计数器均可以按二进制或二—十进制计数; (3)计数器速率可达2MHz; (4)可编程6种不同的工作方式; (5)所有输入和输出都与TTL兼容。
CW = 16 WR
LSB = 4
CLK GATE
OUT
4 3 2 1 43 2 14 3
•写入CW后,输出a为. 方高式,3 计置数值数为后偶数 自时动的计波形数,计数到一半时, 输出变为低,直到计数为0,输出又变为高,重新开始计数
•若计数为偶数,每一个CLK脉冲使计数值减2,当计到0时, 输出改变状态,重新装入计数值开始新的计数。
CW = 16 WR
LSB = 5
LSB = 4
CLK GATE
OUT
543 21 4 3 d. 方式3 计数过程中改变计数值
计数期间写入一个新值,新值在现行半周期结束时装 入计数器。
图7.6(a) 方式2 正常计数
CW = 14 LSB = 3 WR
CLK GATE
OUT 32 23 2 13
计数期间,若GAbT.E方为式低2 电GAT平E信,号停的止作用计数,若 GATE恢复高电平,重新开始计数
图7.6(b) 方式2时GATE信号的作用
计数值改变不影响正在进行的计数过程 改变的计数值是下次有效的
图7.6(c) 方式2时计数过程中改变计数值
❖ 例:若要使计数器2工作于方式2,按二进制 计数,计数值为02F0H,则初始化程序:
MOV OUT MOV OUT MOV OUT
AL,0B4H
;写入控制字
07H,AL
AL,0F0H
06H,AL ;写计数值低8位
AL,02H
06H,AL ;写计数值高8位
4. 方式3 —— 方波发生器 (周期性方波输出)
方式3的工作过程同方式2,只是输出的脉宽不同
• 置完数,GATE为高电平时就开始计数,计数中, 前一半OUT为高电平,后一半OUT为低电平
• 置的数为奇数时,前一半〉后一半一个时钟周期
• 计满后,连续计数
• GATE信号使计数过程重新开始。若OUT为低期 间 , GATE=0,OUT 将 立 即 变 高 , 停 止 计 数 。 当 GATE=1后,计数重新开始。
D0
D1
数
D2
据
D3
线
D4 D5
D6
D7
RD
控 WR
制 线
A1 A0
CS
电
源
VCC
线 GND
8 7
9
CLK0 计
ቤተ መጻሕፍቲ ባይዱ
数
6 5
11
GATE0 器
4
10
OUT0
0
3
2 1
15
CLK1 计
14
GATE1
数 器
22
13
OUT1
1
23
20
19
18
CLK2 计
21
16
GATE2
数 器
24 12
17
OUT2
2
图8-3 82图537的-3 引8脚25信3P号IT管脚图