微机实验报告——定时器计数器
发布时间:2024-09-20
发布时间:2024-09-20
实验三8253定时器/计数器实验
一、实验目的
1.学会8253芯片与微机接口的原理和方法。
2.掌握8253定时器/计数器的工作原理和编程方法。
二、实验内容
编写程序,将8253的计数器0设置为方式2(频率发生器),计数器1设置为方式3(方波频率发生器),计数器0的输出作为计数器1的输入,计数器1的输出接在一个LED上,运行后可观察到该LED在不停地闪烁。
1.编程时用程序框图中的二个计数初值,计算OUT1的输出频率,用表观察LED,进行核对。
2.修改程序中的二个计数初值,使OUT1的输出频率为1Hz,用手表观察LED,进行核对。
3.上面计数方式选用的是 16 进制,现若改用 BCD 码,试修改程序中的二个计数初值,使LED的闪亮频率仍为1Hz。
三、实验区域电路连接图
CS3→0040H;JX8→JX0;IOWR→IOWR;IORD→IORD;A0→A0;A1→A1; GATE0→+5V;GATE1→+5V;OUT0→CLK1;OUT1→L1;CLK0→0.5MHz;(单脉冲与时钟单元
)
四、程序框图
8253方式控制字
五、编程程序
code segment
assumecs:code
org 1000h
start:
mov dx,43h /控制字地址/
mov al,00110100b
outdx,al
mov dx,40h /计时器0地址/
mov al,0F4h
outdx,al
mov al,01h /计数器0写入初值01F4H/
outdx,al
mov dx,43h
mov al,01110110b
outdx,al
mov dx,41h /计时器1地址/
mov al,0E8h
outdx,al
mov al,3h /计数器1写入初值03E8H/
out dx,al /分两次赋值,先低八位0E8H,后高八位03H/
jmp $ /8253自行控制led灯/
code ends
end start
六、实验步骤
1. 按连线图连接好,检查无误后打开实验箱电源。
2. 在PC端软件开发平台上输入设计好的程序,编译通过后下载到实验箱。
3. 运行程序后,观察LED闪烁周期 (可以看10次或更多次闪烁时间,以提高观察准确度)。再按要求调整初始值,使得闪烁周期为 1S时间。
4. 如果运行不正常就要检查连线,程序。排查错误,修改程序,直到运行程序正常。
七、思考题
1. 8253初始化编程时需要遵循的原则是什么?
(1)对计数器设置初始值前必须先写控制字 。
(2)初始值设置时,要符合控制字中的格式规定,即只写低位字节还是写高位字节,或者高低位字节都写(分两次写入),控制字中一旦规定,具体初始值设定时就要一致。
2. 简述8253初始化编程的步骤。
先写控制字到8253的控制端口,再写计数器初值到相应的计数器端口。