实验一简单I / O口扩展实验
一、实验目的
1、熟悉74LS273,74LS244的应用接口方法。
2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。
二、实验设备
CPU挂箱、8086CPU模块。
三、实验内容
逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。
四、实验原理介绍
本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。
五、实验步骤
1、实验接线:
CS0 :CS244
CS1 :CS273
K1~K8 :I0~I7(对应连接)
O0~O7 :LED1~LED8
2. 编辑程序,单步运行,调试程序。
3. 用K1控制LED1、LED2,K2控制LED3、LED4,K3控制LED5、LED6,
K4控制LED7、LED8
4. 调试通过后,全速运行程序,观看实验结果。
5..编写实验报告。
六、实验提示
74LS244或74LS273的片选信号可以改变,如连接CS2,此时应同时修改程序中相应的地址;LED发光二极管为共阴结构,注意电平逻辑。
七、实验结果
程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。
例如:K2置于L位置,则对应的LED2应该点亮。
程序框图如下:
程序源代码清单:
assume cs:code
code segment public
org100h
start:mov dx,04a6h
mov ax,90h
out dx,ax
mov al,0feh
start1:
mov dx,04a0h
in al,dx
test ax,01h
test ax,02h jz start3
test ax,04h jz start4
test ax,08h jz start5
test ax,10h jz start6
test ax,20h jz start7
test ax,40h jz start8
test ax,80h jz start9
mov al,bl
mov dx,04b2h
out dx,al
rol al,1
mov bl,al
mov cx,3000h
add:
jmp start1
start2:mov al,bl
mov dx,04b2h
out dx,al
ror al,1
mov bl,al
mov cx,6000h
add1:
loop add1
jmp start
start3: mov al,bl
mov dx,04b2h
out dx,al
ror al,1
mov bl,al
mov cx,3000h
add2:
loop add2
jmp start
start4: mov al,bl
mov dx,04b2h
out dx,al
rol al,1
mov bl,al
mov cx,3000h
add3:
loop add3
jmp start
start5: mov al,bl
mov dx,04b2h
out dx,al
rol al,1
mov bl,al
mov cx,1500h
add4:
loop add4
jmp start
start6: mov al,bl
mov dx,04b2h
out dx,al
ror al,1
mov bl,al
mov cx,1500h
add5:
loop add5
jmp start
start7: mov bl,00h
mov al,bl
mov dx,04b2h
out dx,al
jmp start
start8: mov bl,55h
mov al,bl
mov dx,04b2h
out dx,al
jmp start
start9: mov bl,0ffh mov al,bl
mov dx,04b2h
out dx,al
jmp start
code ends
end start。