8253定时器计数器接口实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机与通信工程学院
试
验
报
告
书
课程名称:微机原理及应用
设计题目:8253定时器/计数器接口实验实验类型:验证性
授课老师:
实验日期:2013.11.12
班级:通信1102(移动方向)
学号:
姓名:
成绩:
一、实验目的
(1)掌握8253定时器的编程原理及其工作原理.
(2)掌握编写中断服务程序是的方法
(3)掌握初始化中断向量的方法
二、实验设备
MUT—III型实验箱、8086CPU、示波器
三、实验内容
8253计数器0、1、2工作于方波方式,观察其输出波形.
四、实验原理介绍
本实验用到两部分电路:脉冲产生电路,8253定时器/计数器电路五、实验程序框图
六、实验步骤
(1)实验接线
CS0↔CS8253 OUTO↔8253CLK2 OUT2↔LED1
示波器↔OUT1 CLK3↔8253CLK0 CLK3↔8253CLK1 (2)编译调试程序
(3)全速运行程序,拨动某一电平开关,观察LED的亮灭情况。
七、实验提示
(1)、8253是计算机系统中经常使用的可编程定时器/计数器.其内部有三个相互独立的计数器,分别成为T0,T1,T2,8253有多种工作方式,其中方式3为方波方式. (2)、当计数器设好初值后,计数器递减计数,在计数值的前一半输出高电平,后一般输出低电平.
(3)、实验中, T0,T1的时钟由CLK3提供,其频率为750KHZ.程序中,T0的初值设为927CH(37500十进制),则OUT0输出的方波周期为(37500*4/3/1000000=0.05s.). (4)、T2采用OUT0的输出为时钟,则在T2中设置初始值为n时,则OUT2输出方波周期为n*-0.05s.n的最大值为FFFFH,所以OUT2呼出方波最大周期为3276.75s(=54.6分钟)。
(5)、可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在控制中时非常有用的。
八、实验源程序:
assume cs:code
code segment public
org 100h
start:
mov dx,04a6h ;控制寄存器
mov ax,36h ;计数器0,方式3
out dx,ax
mov dx,04a0h
mov ax,7Ch
out dx,ax
mov ax,92h
out dx,ax ;计数值927Ch
mov dx,04a6h
mov ax,76h ;计数器1,方式3
out dx,ax
mov dx,04a2h
mov ax,32h
out dx,ax
mov ax,0 ;计数值32h
out dx,ax
mov dx,04a6h
mov ax,0b6h ;计数器2,方式3
out dx,ax
mov dx,04a4h
mov ax,04h
out dx,ax
mov ax,0 ;计数值04h
out dx,ax
next:
nop
jmp next
code ends
end start
九、实验结果
连接好试验箱之后哦,对程序进行编码然后连接在全速运行程序,LED1闪烁(周期为0.25s),OUT1示波器观察为方波,频率为15KHZ。
十、实验总结:
通过实验,掌握了82593计数器/定时器的工作原理,通过实验进一步了解到8253的控制寄存器和三个计数器分别具有独立的编程地址,并且8253的编程命令有两类:一类是写入命令,包括控制命令字、设置计数器的初始值命令和锁存命令,另一类是读出命令,用来读取计数器的当前值;
3种计数器的6种可编程的工作方式,方式0是一种计数结束产生中断、方式1是一种可触发单稳态方式、方式2是一种频率触发器、方式3是一种方波发生器、计数器4是一种软件触发的选通信号发生器、计数器5是一种硬件触发的选通信号发生器;在8253的初始化编程中,开始先写入并输出控制字,其次依次写入并输出计数初值,然后读计数值;