,.
EXIT: MOV AX,4C00H INT 21H
ERROR: MOV
MOV INT
JMP START
ENDS END
START
DX,OFFSET MSG3 21H
AH,09H
ADD ADD MOV MOV INT RET
ENDP
AL,07H AL,30H 21H
DL,AL AH,06H
;show character
C3:
SHOW
CODE
五、实验结果
,.
实验基本扩展
一、实
了解简单I/O
握数据输入输出程序编制的方法。
三 IO口实验
验目的
TTL芯片扩展口的方法,掌
二、实验内容说明
74LS244是一种三态输出的8总线缓冲驱动器,无锁存功能,当G为低电平时,Ai信号传送到Yi,当为高电平时,Yi处于禁止高阻状态。
其引脚图如下:
,.
74LS273是一种带清除功能的8D触发器, 1D~8D为数据输入端,1Q~8Q为数据输出端,正脉冲触发,低电平清除,常用作8位地址锁存器。
其引脚图如下:
本实验要求用74LS244作为输入口,读取开关状态,并将此状态通过74LS273连接到发光二极管显示。
具体实验内容如下:
(1) 当开关Yi为低电平时对应的发光二极管点亮,Yi为高电平时对应的发光二极
管灭。
(2) 当开关Yi全为高电平时,发光二极管Qi从左至右轮流点亮。 (3) 当开关Yi全为低电平时,发光二极管Qi从右至左轮流点亮。 (4) 自主设计控制及显示模式,完成编程调试,演示实验结果。
编程方法见IO(样例程序).txt.(在编译环境下程序名后缀为.asm且不能含有汉字)
,.
考核方式:完成实验内容(1)(2)(3)通过。 完成实验内容(4)优秀
三、实验原理图
图3-2-1 74LS244与74LS273扩展I/O口原理图
实验连线图:
图3-2-2 扩展I/O口连线图
四、实验步骤
(1)实验连线:
,.
? 244的CS——ISA总线接口模块的0000H,Y7—Y0——开关K1—K8。 ? 273的CS——ISA总线接口模块的0020H,Q7—Q0——发光二极管L1—L8。 ? 该模块的WR、RD分别连到ISA总线接口模块的IOWR、IORD。
? 该模块的数据(AD0~AD7)连到ISA总线接口模块的数据(LD0~LD7)。
(2)编写实验程序,编译链接,运行程序 (3)拨动开关,观察发光二极管的变化。
五、实验程序
1、笨方法实现(主要代码):
START: MOV AX,MY_DATA MOV DS,AX
MOV AX,MY_STACK MOV SS,AX
LOP: MOV DX,0DF00H IN AL,DX
CMP AL,00H JE C0 CMP AL,0FFH JE C3 ;JE EXIT MOV DX,0DF20H OUT DX,AL JMP LOP C0: MOV AL,0FEH JMP C1
C3: MOV AL,07FH JMP C2
C1: ;ROL AL,1 ;MOV DX,0DF20H ;OUT DX,AL ;CALL DELAY ;CALL BREAK ;JE C1 ;CMP AL,0FEH ;JE EXIT ;JMP C1
;MOV AL,0FCH MOV DX,0DF20H OUT DX,AL
相关推荐: