一 实验目的
1)掌握8255方式0的工作原理以及设置C口输入,A口输出的编程方法。
2)掌握I/O接口地址译码电路的工作原理及端口地址的计算方法。
3)掌握I/O端口的读写操作及编程方法。
4)掌握微机接口集成开发环境HQFC软件的使用方法。
二 实验原理图
三 代码实现
io8255a equ 288h
io8255b equ 28bh
io8255c equ 28ah
code segment
assume cs:code
start: mov dx,io8255b ;设8255为C口输入,A口输出
mov al,8bh ;A口0方式输出,C口输入
out dx,al
inout: mov dx,io8255c ;从C口输入一数据
in al,dx ;从dx读取数据传给al
mov dx,io8255a ;从A口输出刚才自C口
out dx,al ;所输入的数据
mov dl,0ffh ;判断是否有按键
mov ah,06h ;直接控制台IO
int 21h
jz inout ;若无,则继续自C口输入,A口输出
mov ah,4ch ;否则返回
int 21h
code ends
end start
该程序的功能是设置好C口输出数据A口输出数据,通过开关的闭合将其数据从C口输入,译码处理,然后从A口并行输出,来控制LED灯的亮灭。开关断开,相应的LED点亮;开关合上,LED熄灭。
四 流程图