第12章 可编程定时器计数器及其应用
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通道选择
00 通道0 01 通道1 10 通道2 11 无效
00 计数器锁存 01 只读/写低字节
10 只读/写高字节
11 先读/写低字节 后读/写高字节
《微机接口技术》
19
8253初始化编程举例
例:用8253的计数通道1,工作在方式0,按 8位二进制计数,计数初值为128 ① 确定控制字
D7 0
13
8253的内部主要部件(2)
数据总线缓冲器
D7~D0,8位双向三态缓冲器
D7~D0
数据总线 缓冲器
与CPU的数据总线连接,负责传送CPU用输入 输出指令进行读写操作时的所有信息
读/写逻辑
存放CPU写入的控制字
____ RD WR
A0
A1 CS
读/写 逻辑
从控制总线和地址总线上接收输入信号(读信号、 写信号及地址信号),转换成内部操作控制信号
《微机接口技术》
22
主要内容
一、定时/计数的基本技术 二、8253的内部结构及特性 三、8253的工作方式及特点 四、8253的应用举例
《微机接口技术》
23
8253的工作方式
8253可以通过编程选择6种工作方式之一 8253工作过程回顾
初始化第一步:写入控制字
初始化第二步:写入计数初值 计数初值装入CE,开始计数
数据输入/输出线
《微机接口技术》 35
用方式2产生DRAM定时刷新信号
IBM PC/XT/AT中,8253通道1的专用功能 DRAM刷新频率
2ms内刷新128次,刷新频率为64KHz
CLK 0 GATE 0
OUT 0
____ RD ____ WR A0 A1
读/写 逻辑
内 部 总 线
计数器 1
CLK 1 GATE 1 OUT 1
CS
控制字 寄存器
计数器 2
CLK 2 GATE 2 OUT 2
《微机接口技术》
12
8253的内部主要部件(1)
计数器0、计数器1、计数器2
3个计数器/定时器通道 3个通道的操作是完全独立的
《微机接口技术》
25
方式0:计数到零产生中断请求
输出波形
____ WR CLK
CW
N=4
N+1个
GATE (高) OUT
1
2 3
4 3
3
2
3
1
3
0
《微机接口技术》
26
方式0的主要特点及用途
触发方式
软件启动,计数初值一次有效,不能自动重复 计数结束时产生的上升沿可作为中断请求信号 又称为Interrupt on Terminal Count
计数器 0
CLK 0 GATE 0 OUT 0
8253计数器对外接口
CLK:时钟输入信号,作为计数脉冲 GATE:门控输入信号,对计数过程进行控制 OUT:计数输出信号
《微机接口技术》
24
公共操作说明
① 写入控制字CW后,OUT端进入已知初始 状态(高电平或低电平) ② 写入计数初值CR后,经过一个CLK下降 沿 ,CR装入CE,开始计数 ③ 每输入一个CLK脉冲,CE的计数值减1 ④ GATE的电平控制: ⑤ GATE的门控触发:
《微机接口技术》
30
方式1:硬件可重复触发的单稳态触发器
输出波形:宽度为N个CLK周期的负脉冲
____
WR CLK
CW
N=2
6
GATE OUT
5
2 1 0 2 1 0
《微机接口技术》
31
方式1的主要特点
触发方式
硬件启动,计数初值可多次有效(需要由GATE 上升沿触发),不能自动重复 又称为Hardware Retriggerable One-shot
① 具有3个独立的16 D 位计数通道 D ② 每个计数通道有6种 D D 工作方式 D ③ 每个计数通道可按 D 二进制或二-十进制 D (BCD码)计数 CLK ④ 每个计数通道的计 OUT GATE 数速率可达2MHz
D7
5 6 4 3 2 1 0 0
1 2 3 4 5 6
24 23 22 21 可编程 20
《微机接口技术》
34
DRAM的定时刷新
行选择信号
定期对所有单 元进行 刷新 (Refresh) , 使原来表示逻 辑“1”电容 上的电荷得到 补充,而原来 表示逻辑“0” 的电容仍保持 无电荷状态
列选择信号
T C
刷新 放大器
基本存储单元
任何电容均 存在漏电效 应,经过一 段时间后电 容上的电荷 会流失殆尽, 导致所存信 息丢失
《微机接口技术》
2
计数/定时的基本概念
计数
主要是指对外部事件发生的次数进行计量
定时
主要是指产生一段准确的时延 定时是对固定的时间单位进行计数 定时本质上也是计数,定时是以计数为基础的
《微机接口技术》
3
计数/定时的主要用途
计算机系统
提供系统的日时钟 接口电路的工作节拍、信息传送的同步信号 保证在确定时刻完成规定动作 提供时间基准,供操作系统切换进程使用
主要内容
一、计数/定时的基本技术 二、8253的内部结构及特性 三、8253的工作方式及特点 四、8253的应用举例
教材相关章节: 《微型计算机基本原理与应用(第二版)》 第12章 可编程定时器/计数器及其应用
《微机接口技术》 1
主要内容
一、计数/定时的基本技术 二、8253的内部结构及特性 三、8253的工作方式及特点 四、8253的应用举例
高8位
低8位
输出锁存器(OL)
CLK 1 GATE 1
Data flow
计数器1 计数器2
OUT 1 CLK 2 GATE 2 OUT 2
A1 A0
《微机接口技术》
15
8253计数通道内部寄存器
控制寄存器:8位只写,存放本通道控制字 计数初值寄存器(CR)
16位只写,存放CPU写入的计数初值 决定计数范围与定时数值的重要参数
计数器 0
CLK 0 GATE 0 OUT 0
CLK:时钟输入信号,作为计数脉冲,可以是非 周期性脉冲,也可以是频率精确的周期性脉冲 GATE:门控输入信号,对计数过程进行控制, 具体作用视工作方式而定 OUT:计数输出信号,“计数到零/定时时间到” 输出,输出信号形式视工作方式而定
《微机接口技术》
《微机接口技术》
6
(2)不可编程的硬件定时
采用电子器件构成定时电路,定时的数值和 范围通过调整电路中的电阻和电容来确定 优点:不占用CPU资源 缺点:无法通过软件进行控制
时序波形 单稳态 电路 触发信号 暂稳态
《微机接口技术》
稳态
td
7
(3)可编程计数器/定时器
计数器和定时器都由数字电路中的计数电路 构成,记录输入的计数脉冲的个数 计数器(Counter)
工业测控系统
计数:对零件和产品的计数、对车流量的统计 定时:定时采样、定时检测、定时扫描
声音/音乐
由计数/定时的基本功能派生而来
《微机接口技术》 4
实现定时的三种方法
软件定时
不可编程的硬件定时
可编程计数器/定时器
《微机接口技术》 5
(1)软件定时
让计算机专门执行延时程序,由执行指令序 列中各条指令花费的时间构成固定时间间隔 示例 MOV CX , ××××H DELAY: LOOP DELAY 优点:不需要专门的硬件设备 缺点:浪费了宝贵的CPU资源 定时时间受主机频率影响,通用性差
主要用途
事件计数:零件和产品计数、车流量统计 倒计时:红绿灯、家电控制、秒表等
《微机接口技术》
27
方式0的其他特点(1)
计数过程中GATE对计数操作的控制
当GATE变低时,暂停计数
当GATE变高时,继续计数
____ WR CLK CW N=3
GATE
OUT 3 2
4
2 2 1 0
《微机接口技术》
② 设置计数初值
向选定计数通道的CR写入计数初值 计数通道由地址A1A0指定
《微机接口技术》
18
控制字的格式
D7 D6 D5 D4 D3 D2 D1
SC1
SC0
RL1
RL0
M2
M1
M0
D0 BCD
读/写格式
工作方式 000 方式0 001 方式1 x10 方式2 x11 方式3 100 方式4 101 方式5 计数制 0 二进制 1 十进制 (BCD)
《微机接口技术》
14
8253的编程结构
数据总线
D7~D0
控制寄存器(8位) 高8位 低8位
计数器0
计数初值寄存器 (CR)
VCC GND
____ RD
____ WR __ IO/M 地址 译码
____ RD
____ WR
CLK 0 计数执行部件 (CE)
高8位
低8位
GATE 0 OUT 0
____ CS
计数执行部件(CE)
16位减法计数器,对输入脉冲进行“减1”计数 CPU不能直接对CE进行读写访问
输出锁存器(OL):16位只读,锁存CE值
《微机接口技术》
16
8253内部寄存器的寻址
____ ____
RD
1
WR
0
A1
0
A0
0
寄存器选择和操作
写通道0计数初值寄存器CR0
1
1 1 0 0 0
计数过程中GATE对计数操作的控制
GATE上升沿触发从计数初值开始重新计数 效果是使输出负脉冲的宽度增加
计数过程中重新写入计数初值的影响
本次计数不受影响,新的计数初值在下个计数 周期有效
《微机接ቤተ መጻሕፍቲ ባይዱ技术》 32
方式2:分频器
输出波形:每输入N个CLK脉冲,输出宽度 为1个CLK周期的负脉冲
Vcc ____ WR ____ RD ____ CS
A1
A0 CLK2
计数器 19 7 /定时器 18 8253
8
9 10 11 12
17
16 15 14 13
GATE2
OUT2 CLK1 GATE1 OUT1
11
0 0
GND
《微机接口技术》
8253的内部结构
D7~D0
数据总线 缓冲器
计数器 0
《微机接口技术》
21
8253的读出操作
访问输出锁存器OL,可以读出当前计数值 ① 暂停计数的读操作
利用GATE信号使计数过程暂停,或由外部逻辑 禁止CLK脉冲输入,再进行读操作
② 锁存方式的读操作
在计数过程中,OL的值随CE的值而变化 接到锁存命令,OL锁存当前CE的值,不再变化 当CPU读出OL的数据后,OL解除锁存,继续随 CE计数值变化
28
方式0的其他特点(2)
计数过程中重新写入计数初值的影响
新的计数初值立即有效,重新开始计数
____ WR CW N=3 N=2
CLK
GATE (高) OUT 3 2 1 2 1 0
《微机接口技术》
29
6种工作方式的主要区别
输出波形
触发方式
计数过程 中GATE对 计数操作 的控制
计数过程 中重新写 入计数初 值的影响
Zilog Intel Z80-CTC 8253(8254) Intel 8253 可编程计数器/定时器
《微机接口技术》 9
主要内容
一、定时/计数的基本技术 二、8253的内部结构及特性 三、8253的工作方式及特点 四、8253的应用举例
《微机接口技术》
10
可编程计数器/定时器8253
___ WR CLK GATE (高) OUT 3 2 1 3 2 1 3 CW N=3
《微机接口技术》
33
方式2的主要特点及用途
触发方式
软件启动,自动重复,周期性输出固定频率的 脉冲 又称为Rate Generator
主要用途
脉冲速率发生器,类似“Divide-by-N”Counter Count(N) = Input(Hz) ÷ Frequency of Output
通道1
D6 1
D5 0
D4 1
D3 0
D2 0
方式0
D1 0
D0 0 50H
只写低8位
二进制计数
② 确定计数初值
128(十进制)= 80H
《微机接口技术》 20
8253初始化编程举例(续)
若8253的端口地址为48H~4BH,则初始化 程序段如下:
MOV OUT MOV OUT AL, 50H 4BH,AL ;设置通道1控制字 AL, 80H 49H,AL ;写通道1计数初值,只写低8位
以外部事件产生的脉冲信号作为计数脉冲 主要用于实现计数、测量和控制的功能
定时器(Timer)
以高精度晶振脉冲信号(时钟)作为计数脉冲
主要用于时钟分频、产生单脉冲和连续脉冲、 输出准确的时延
《微机接口技术》
8
(3)可编程计数器/定时器
软硬件相结合的方法,采用专用的定时电路, 其定时值通过软件进行控制 特点:功能灵活,使用方便 典型产品
0
0 0 1 1 1
0
1 1 0 0 1
1
0 1 0 1 0
写通道1计数初值寄存器CR1
写通道2计数初值寄存器CR2 写控制寄存器 读通道0输出锁存器OL0 读通道1输出锁存器OL1 读通道2输出锁存器OL2
《微机接口技术》 17
8253的初始化操作
① 设置控制字
计数通道选择:3个计数通道之一 工作方式选择:6种工作方式之一 指定计数初值长度和装入顺序 指定计数值的码制:二进制或十进制(BCD)