实验定时器计数器.doc
文本预览下载声明
实验3 8253定时/计数器实验
一.实验要求? 编程将8253的定时器0设置为方式3(方波),定时器1设置为方式2(频率发生器),定时器2设置为方式2(频率发生器)。定时器0输出的脉冲作为定时器1的时钟输入。定时器1的脉冲输出作为定时器2的输入,定时器2的输出接在一个LED上,运行后可观察到该LED在不停闪烁。可用示波器观察各对应引脚之间的波形关系。
二.实验目的
了解8253定时器的硬件连接方法及时序关系。掌握8253的各种模式的编程及其原理,用示波器观察各信号之间的时序关系。
三.实验电路及连线
8253中GATE0、GATE1、GATE2接+5V。
CLK0接模块的频率插孔: F ,CLK1接OUT0,CLK2接OUT1。
OUT2 接L1灯。CS8253接228~22FH。
四.实验说明
?? D8284时钟发生驱动器,74LS393是双4位二进制计数器,接Q3位置时分频16。8253的工作频率≦2.6MHz,实验板上的晶振是14.7456MHz,因此须经过D8284和74LS393分频后再作为8253的CLK输入,F点即计数器0的CLK0端的频率约300K~500kHz。
运行本程序后,用示波器观察8253的OUT0、OUT1、OUT2脚上的输出波形。同时可看到L1灯在不停闪烁。
五.实验程序框图
六.示例程序见:
;---------------------------------------------------------TIM_CTL EQU 22BH ;控制寄存器地址
TIMER0 EQU 228H ;计数器0地址
TIMER1 EQU 229H ;计数器1地址
TIMER2 EQU 22aH ;计数器2地址
MODE03 EQU ; 十六进制数36H,定义计数器0,读写两个字节,方波发生器,二进制
MODE13 EQU ;十六进制数74H,定义计数器1,读写两个字节,分频器,二进制
MODE22 EQU ;十六进制数B4H,定义计数器2,读写两个字节,分频器,二进制
DATA SEGMENT
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: PUSH DS
MOV AX,0
PUSH AX
MOV AX,DATA
MOV DS,AX
;---------------
CLI ;关中断
MOV DX,TIM_CTL ;定时器0工作在方式3
MOV AL,MODE03 ;送控制字
OUT DX,AL
MOV DX,TIMER0 ;定时器0地址
MOV AL,00H ;送低位时间常数
OUT DX,AL
mov al,01h ;送高位时间常数
out dx,al
MOV DX,TIM_CTL ;定时器1工作在方式2
MOV AL,MODE13
OUT DX,AL
MOV DX,TIMER1 ;时间常数及分频常数
MOV AL,18H ;送低位常数
OUT DX,AL
mov al,00h ;送高位常数
out dx,al
MOV DX,TIM_CTL ;定时器2工作在方式2
MOV AL,MODE22
OUT DX,AL
MOV DX,TIMER2
MOV AL,0aH ;送低位常数
OUT DX,AL
mov al,00h ;送高位常数
out dx,al
STI ;开中断
JMP $ ;程序在此循环。各定时器工作
CODE ENDS
END START
编程提示
根据本实验电路图,查看各连接关系,注意OUT0、OUT1、
显示全部