当前位置:首页 > 微机原理与接口技术实验报告-全实例代码
。
pop dx pop cx ret delay1 endp
delay2 proc ;延迟 push cx push dx mov dx,10 dl5002: mov cx,2801 dl10Ms2: loop dl10Ms2 dec dx jnz dl5002 pop dx pop cx ret delay2 endp code ends end start 实验总结:
1、 本实验与上一个实验都是使用8255通用芯片,不同之处在于,该实验要写控制字的方式对C端口的输出进行控制,以达到控制红绿灯的目的。
-可编辑修改-
。
2、 写命令字的地址为203,通过写入90h命令字实验端口分配,A做输入,BC做输出。不过A、B端口都不会被使用。只是控制C端口就可以控制红绿灯。 3、 根据C端口8个输出位于每个二极管的对应关系可以知道命令字形式与红绿灯情况的对应关系。通过地址203写入控制字,并在个命令之间加以适当的延迟,就可以控制红绿灯。
4、 由于程序运行十分迅速,所以要专门写延迟程序段delay1和delay2。
实验十一 定时器
实验目的:
练习使用8253芯片的应用。 实验要求:
从系统的F孔引入约350KHZ频率,送入定时器,将350KHZ经三次分频送入5253,将输出频率送入一发光二极管使其亮、灭各1S。
第一次分成1KHZ。350KHZ除以1KHZ=350,分频系数350,将350用指令送入8253。
第二次分成10HZ。1KHZ除以10HZ=100,分频系数100,将100用指令送入8253。
第三次分成1HZ。10HZ除以10HZ=1,产生1秒的时间。 送入定时器0,使其工作在方式三 送入定时器1,使其工作在方式三
-可编辑修改-
。
送入定时器2,使其工作在方式三。用导线将OUT2与一发光二极管连线,使之亮、灭1S。
实验汇编源程序如下: code segment assume cs:code start: mov al,36h mov dx,203h out dx,al mov ax,350 mov dx,200h out dx,al mov al,ah mov dx,200h out dx,al mov al,56h mov dx,203h out dx,al mov al,100 mov dx,201h out dx,al
-可编辑修改-
。
mov al,94h mov dx,203h out dx,al mov al,10 mov dx,202h out dx,al code ends end start
实验总结:
本实验使用的8253 的工作方式3,并且三个定时器级联进行分频。最终把信号分成1Hz。
-可编辑修改-
共分享92篇相关文档