- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1--计数值为BCD码格式 0--计数值为二进制格式
0 0----选计数器0 0 1----选计数器1 1 0----选计数器2 1 1----无意义
0 0----对计数器进行锁存 0 1----只读/写低8位字节 1 0----只读/写高8位字节 1 1----先读/写低8位字节,
再读/写高8位字节.
M2 M1 M0 模式选择 0 0 0 模式0 0 0 1 模式1 0 1 0 模式2 0 1 1 模式3 1 0 0 模式4 1 0 1 模式5
8253初始化方法:设置控制字;确定计数初值。
例8.2:使2号定时器,工作在方式3,计数初值=533H, 二进制计数.试写出8253初始化程序段。已知8253 的端口地址:40H,41H,42H,43H
8.1 定时基本概念
硬件定时
采用定时/计数器或单稳延时电路产生定时或延 时。
不占CPU时间,定时准确且时间长,不受主机 频率的影响,使用灵活,通用性好。
8253:2MHz 8254:8MHz 8254-5:5MHz
8253-5:5MHz 8254-2:10MHz 等
例8.1:软件定时的例子
编写一个软件定时程序,要求定时20ms。
OUT 41H,AL
2.方式1——单脉冲触发器
(GATE边沿触发,硬件触发,启动新一轮计数)
高
3.方式2----分频器(具有计数初值自动重装能力)
L: MOV AL,01000000B ;1号计数器锁存命令
OUT 43H,AL
IN AL,41H
;读1号计数器计数值
CMP AL,0FFH
JNE L
HLTΒιβλιοθήκη 8.2.3 8253的工作模式
方式0——计数结束产生中断
一次定时或计数,重写初值,启动新一轮的计数
方式1——可编程的单脉冲(单稳)触发器
GATE边沿触发,启动新一轮计数
完成0~9的计数,主要程序片段
MOV CX, 10
LP: CALL DELAY
MOV DL,30H
MOV AH,02H ;DOS调用,显示一个字符
INT
21H
INC
DL
LOOP LP
MOV AH,4CH
INT
21H
DELAY PROC NEAR ;软件延时子程序
PUSH AX
MOV CX,0FFFFH
;时钟数:17T
写成子程序:
DELAY PROC FAR PUSH CX MOV CX, 37209
L: PUSHF POPF LOOP L POP CX RET
误差:(15+12+19)*0.125=5.75us
PUSH CX ;时钟数: 15T
POP
CX ;时钟数: 12T
RET
;时钟数: 19T
MOV AL,10110110B OUT 43H,AL MOV AX,0533H OUT 42H,AL MOV AL,AH OUT 42H,AL
;2号定时器,方式3 ;2号数据口
读当前计数值:先写锁存控制字,再读计数值
例8.3: 计数器1已经初始化为8位二进制计数方式, 要求读出并检查1号计数器的当前值是否全为”1”。 已知8253的端口地址:40H,41H,42H,43H
4).计数器: 三个独立通道:计数器0, 计数器1, 计数器2
每个计数器包含: 计数初值寄存器(16位,65536个数,64KB) 减一寄存器(16位) 当前计数初值锁存器(16位)
计数:CLK脉冲间隔可以不相等; 定时:CLK脉冲间隔相等,精确的时钟脉冲
提问:
8253每个计数通道与外设接口有哪些信号 线,每个信号的用途是什么?
定时 /计数器芯片Intel 8253占用几个端 口地址?各个端口分别对应什么?
2.计数初值 计数初值n =时钟频率fc/输出频率fout =定时时间Tout/时钟脉冲周期Tc
3.编程命令 方式命令字 对8253初始化
8.2.2 8253控制字格式
SC1 SC0 RW1 RW0 M2 M1
M0 BCD
1).数据总线缓冲器(8位)
往计数器设置计数初值; 从计数器读取计数值; 往控制寄存器设置控制字。
2).读/写逻辑电路 A1 A0:端口选择 0 0:通道0(0号计数器) 0 1:通道1(1号计数器) 1 0:通道2(2号计数器) 1 1:控制字寄存器
3).控制寄存器(8位) 接收CPU送来的控制字,用来选择计数器和工作 方式,只能写不能读。
假设:8086的时钟=8MHz, 一个时钟周期 T=1/8MHz=0.125us
延时20ms,执行PUSHF,POPF指令:
需要循环次数: N=20000/[(14+12+17)*0.125]
=37209
参考程序:
MOV CX,37209
L1: PUSHF
;时钟数:14T
POPF
;时钟数:12T
LOOP L1
方式2——分频器(速度波形发生器)
具有计数初值重装能力
方式3——方波发生器
具有计数初值重装能力
方式4——软件触发的选通信号发生器
一次定时,重写初值,启动新一轮的计数
方式5——硬件触发的选通信号发生器
GATE边沿触发,新一轮计数
1.方式0——计数结束产生中断 ) (一次定时或计数,若重新计数,则需重写初值,启动新一轮的计数
微机原理与接口技术-8定时、计 数技术..
重点
8253的外部特性 8253工作模式 8253初始化
8.1 定时基本概念
定时/计数
日时钟-实时钟;定时采样 生产线上零件统计、车流量统计 - 频率-声音-音乐
微机中的定时方法
软件定时——延迟子程序 短时延时,不需要外围设备;CPU等待延 时增加开销,降低CPU效率,受主机频率 的影响,通用性差等
例8.4:使1号定时器工作在方式0,计数初值 0FF5H, 二进制计数.试写出8253初始化程序段。已知8253 端口地址:40H,41H,42H,43H
MOV AL,01110000B ;1号定时器,方式0
OUT 43H,AL
MOV AX,0FF5H
OUT 41H,AL
; 1号数据口
MOV AL,AH
L: PUSHF
POPF
LOOP L
POP AX
RET
DELAY ENDP
8.2 可编程计数器/定时器8253 PIT(Programmable Interval Timer)
1.外部特性
D0~7 A2
8086 A1 CPU
A9~A3
8253端口地址为偶地址
8253内部结构框图 CLKi:不大于2MHZ