实验一 I/O地址译码
更多微机实验:https://blog.csdn.net/yxp189/column/info/39992
注意:未经允许,请勿转载!
转载请标明出处~
适用课程:微机原理与接口技术(实验)
选用教材:微型计算机原理与接口技术-中国科学技术大学出版社
一、实验目的
掌握I/O地址译码电路的工作原理。
二、实验原理和内容
实验电路如下图所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,…… 当CPU执行I/ O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。
例如:执行下面两条指令
MOV DX,2A0H
OUT DX,AL(或IN AL,DX)
Y4输出一个负脉冲,执行下面两条指令
MOV DX,2A8H
OUT DX,AL(或IN AL,DX)
Y5输出一 个负脉冲。
利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
二、实验电路图
实验代码:
;Author:YXP
;CSDN:yxp189
;Email:yxp189@protonmail.com
;如有问题,欢迎和我联系~
;转载请标明出处~
IOPORT EQU 0D100H-0280H
OUTPORT1 EQU IOPORT+2A0H
OUTPORT2 EQU IOPORT+2A8H
CODE SEGMENT
ASSUME CS:CODE
START:
MOV DX,OUTPORT1
OUT DX,AL
CALL DELAY ;调延时子程序
MOV DX,OUTPORT2
OUT DX,AL
CALL DELAY ;调延时子程序
MOV AH,1
INT 16H
JE START
MOV AH,4CH
INT 21H
DELAY PROC NEAR ;延时子程序
MOV BX,2000
LLL: MOV CX,0
LL: LOOP LL
DEC BX
JNE LLL
RET
DELAY ENDP
CODE ENDS
END START