微机原理及接口技术Intel8253定时器计数器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8253
CLK GATE OUT
8253 的内部的各计数器的结构
锁存厚读出当前值 LSB
MS
16位当前计数值锁存B器
CLK
&
GATE
装入/读出初值
16位减一计数器
OUT (减1至0时)
16位计数初值寄存器
LSB
MSB
四. 8253的端口寻址及基本操作
CS RD WR A1 A0
0
10
0
10
0
10
(注:时间常数也可在计数过程中更改)
三、8253 定时器/计数器的内部结构、
1、内部结构(下页)
.内部逻辑结构 8253/8254内部有6个模块,其结构框图如图 3.2所示。
8253 定时器/计数器的内部结构框图
CLK0
CPU 8 数据总线缓冲器
A0 A R1D
WR
读/写逻辑
计数器 0 计数器 1
并行操作。
3、8253定时与计数结束时产生的脉冲信号可用 于对某一事件进行控制,也可作用为一外部终 端请求信号。
二、Intel 8253 定时器/计数器的基本性能参数
1、一片8253内部有3个16位的计数器(相互独立) 2、每个计数器的内部结构相同,可通过编程手段设置为6种不 同的工作方式来进行定时/计数 3、每个计数器再开始工作前必须预制时间常数(时间初始) 4、每个计数器在工作过程中的当前计数值可被CPU读出.
M0 BCD
计数器选 择
工作方式
00 计数器锁存命
读/写指

示 10 只读/写高八位
00 选择计数 器0
01 只读/写低八位
01选择计数 11 先读/写低八位
器1
再读/写高八位
10 选择计数 器2

000 方式0数制选择
101 方式5
关于的控制字说明:
1、8253只有一个工作方式控制字,但是对每个计数器而言, 它们的工作方式控制字内容一定各不相同(前两位不同), 所用各计数器的控制字需要分别设置,先后不计。
六、8253 的工作方式
8253/8254芯片的每个计数器通道都有6种 工作方式可供选用。
1、方式0 “一次有效” 1)、计数器写完计数值时,开始计数,相应的输出信
号OUT就开始变成低电平。当计数器减到零时,OUT立即 输出高电平。 18组1
2)、门控信号GATE位高电平时,计数器工作;为低电 平时,计数器停止工作,计数只保持不变。
01选择计数 器1
10 选择计数 器2
00 计数器锁存命 令
4.计数初值
计数初值与输入时钟(CLK)频率及输出波形 (OUT)频率之间的关系为:
Ci=CLK/OUT

Tc=CLK/OUT
5. 8253初始化的工作有两个内容:
(1)一是向命令寄存器写入方式命令,以选择器 (3个计数器之一),确定工作方式(6种方式之 一),指定计数器计数初值的长度和装入顺序以及 计数值的码制(BCD或二进制码)。
(2)二是向已选定的计数器按方式命令的要求写 入计数初值。
❖例1:选择2号计数器,工作在3方式,计数初值为 533H(2个字节),采用二进制计数。其初始化程序 段为
❖ MOV DX,307H
;命令口
❖ MOV AL,10110110B ;2号计数器的初始化

命 令字
❖ OUT DX,AL
;写入命令寄存器
GATE0 OUT0
CLK1 GATE1 OUT1
CS
Fra Baidu bibliotek
CLK2
控制字寄存器 内部总线
计数器 2
GATE2 OUT2
定时器/计数器的内部结构:
①数据总线缓冲器。它是一个三态、双向8位寄存器,用于 将8253与系统数据总线D0~D7 相连。 ②读/写逻辑。 ③控制命令寄存器。它接受CPU送来的控制字。 ④计数器。8253有3个独立的计数器(计数通道),其内部 结构完全相同,
18组11
3)、在计数器工作期间,如果重新写入新的计数值,计数器
将按新写入的计数值重新工作。18组2
CLK n=5
① WR OUT
0
1
0
0
01
0
01
0
0
1
0
0
0
1
1
0
1
1
0
0
0
1
1
0
传送方式
写入计数器0的初始值 写入计数器1的初始值 写入计数器2的初始值 写入控制寄存器控制字
读自计数器0的OL 读自计数器1的OL 读自计数器2的OL
五、8253 的控制字格式:
D7
D6
D5
D4
D3
D2
D1
D0
SC1
SC0 RW1 RW0
M2
M1
计数器:
在时钟信号作用下,进行减“1”计数,计数次数到 (减“1”计数回零),从输出端输出一个脉冲信号。
计数举例: •①对零件和产品的计数; •②对大桥和高速公路上车流量的统计,等等。
Intel8253在微机系统中可用作定时器和计数器。 定时时间与计数次数是由用户事 先设定。
2、 8253 定时与计数器与CPU的关系 8253 定时与计数操作过程与CPU相互独立,
❖ MOV DX,307H
;命令口
❖L :MOV AL,01000000B
;1号计数器的锁存命令
❖ OUT DX,AL
;写入命令寄存器
❖ MOV DX,305H
;1号计数器数据口
❖ IN AL,DX
;读1号计数器的当前计数值
❖ CMP AL,0FFH
;比较
❖ JNE L
;非全“1”,再读
❖ HLT
; 是全“1”,暂停
第七章 Intel 8253定时器/计数器
一、概述 1、定时与计数器的概念
定时器:在时钟信号作用下,进行定时的
减“1”计数,定时时间到(减“1”计数回零), 从输出端输出周期均匀、 频率恒定的脉冲信号。
由上述可知,定时器强调的是精确的时间。
定时举例:
①一天24小时的计时,称为日时钟。 ②在监测系统中,对被测点的定时取样。 ③在读键盘时,为去抖,一般延迟一段时间,再读。 ④在微机控制系统中,控制某工序定时启动。
2、8253的工作方式控制字的特殊形式可用于对计数器的 当前计数值进行锁存。
控制字
3、在工作方式控制字被设置之后,随后必须紧接着给计 数器预设置计数初值,计数器方可开始工作。
锁存计数器当前计数值控制字
D7
D6
D5
D4
D3
D2
D1
D0
SC1
SC0 RW1 RW0
M2
M1
M0 BCD
未用
计数器选 择
00 选择计数 器0
❖ MOV DX,306H
;2号计数器数据口
❖ MOV AX,533H
;计数初值
❖ OUT DX,AL
;选送低字节到2号计

数器
❖ MOV AL,AH
;取高字节送AL
❖ OUT DX,AL
;后送高字节到2号

计数器
❖例2:要求读出并检查1号计数器的当前计数值是否是全“1”(假 定计数值只有低8位),其程序段为
相关文档
最新文档