8254定时计数器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
深圳大学实验报告课程名称:微机原理
实验项目名称:8254定时计数器实验
学院:信息工程学院
专业:电子
指导教师:张力
报告人:林泽杭学号:2009130340班级:电子4 实验时间:2011.5.30
实验报告提交时间:2011.6.15
教务处制
一·实验目的与要求:
1. 掌握8254的工作方式及应用编程。
2. 掌握8254典型应用电路的接法。 二·方法、步骤:
1. 计数应用实验
编写程序,将8254的计数器0设置为方式0,计数值为十进制数4,用单次脉冲KK1+作为CLK0时钟,OUT0连接MIR7,每当KK1+按动5次后产生中断请求,在屏幕上显示字符“M ”。 (1)实验接线如图1所示。
(2)编写实验程序,经编译、链接无误后装入系统。
(3)运行程序,按动KK1+产生单次脉冲,观察实验现象。 (4)改变计数值,验证8254的计数功能。
D0
D7
...
W R RD CS
XD0
XD7
...
IOW #IOR#IOY3
系统总线
8254单元
A0A1
XA1XA2
单次脉冲单元
MIR7
GAT E 0
CL K0
OUT 0
VCC
KK1+
4.7K
图1 8254计数应用实验接线图
2. 定时应用实验
编写程序,将8254的计数器0设置为方式3,用信号源1MHz 作为CLK0时钟,OUT0为波形输出1ms 方波。 (1)接线图如图2所示。
(2)根据实验内容,编写实验程序,经编译、链接无误后装入系统。 (3)运行实验程序,用示波器测试OUT0输出,验证程序功能。
D0
D7
...
W R RD CS
XD0
XD7
...
IOW #IOR#IOY3
系统总线
8254单元
A0A1
XA1XA2
系统总线
GAT E 0
CL K0
OUT 0
VCC
CL K
波形输出示波器测量
4.7K
图2 8254定时应用实验接线图
实验过程和内容: 1. 计数应用实验。编写程序,应用8254的计数功能,使用单次脉冲模拟计数,使每当按动…KK1+‟5次后,产生一次计数中断,并在屏幕上显示一个字符…M ‟。 2. 定时应用实验。编写程序,应用8254的定时功能,产生一个1ms 的方波。
数据处理分析:
一、计数应用实验的流程图
主程序 子程序
中断子程序有关量的初始化 设置计数器、方式和计初值数
STI 开中断
主程序其它工作处理 (AA1的循环 延时)
恢复原中断向量
发中断结束命令EOI
恢复现场
IRET 中断返回
设置新的中断向开始 保存原中断向量 CLI 关中断 返回DOS
结束
开始 保护现场 显示字符M
二、计算定时应用实验中8254计数器0的计数初值,要求写出公式和计算结果。
答:
定时常数=要求定时的时间/时钟脉冲的周期
N=1ms/(1/1MHz)=1000
三、给定时应用实验程序加上注释。
实验程序清单(A82542.ASM)
A8254 EQU 06C0H
B8254 EQU 06C2H
C8254 EQU 06C4H
CON8254 EQU 06C6H
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX, CON8254 ;8254
MOV AL, 36H ;计数器0,先低后高读写,方式3,BCD
OUT DX, AL;写计数器0的控制字
MOV DX, A8254
MOV AL, 0E8H ;写计数器0的低8位初值
OUT DX, AL
MOV AL, 03H ;写计数器0的高8位初值
OUT DX, AL
AA1: JMP AA1 ;延时
CODE ENDS
END START
指导教师批阅意见:
成绩评定:
指导教师签字:
年月日备注:
注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。
2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。