微机接口技术实验报告

微 机 接 口 实 验 报 告

所在系: 信息工程系

班 级: 09结计算机科学与技术

学 号: PB092028122

实验一 简单I/O口扩展实验

一、实验目的

1、 熟悉74LS273,74LS244的应用接口方法。

2、 掌握用锁存器、三态门扩展简单并行输入、输出口的方法。 二、 实验内容

1、 由键盘输入字符,然后通过74LS273将其ASCII码锁存输出,并通过LED显示出来。 2、 逻辑电平开关的状态输入74LS244,经过PCI总线读入并以16进制显示在屏幕上。

3、 逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。 三、 实验原理介绍

本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。 四、 实验步骤

1、 实验接线:(??表示相互连接)

CS0??CS244,CS1??CS273,平推开关的输出K1~K8??IN0~IN7(对应连接)00~07??发光二极管的输入LED1~LED8。

2、 编辑程序,用debug调试程序,单步运行。 3、 调试通过后,全速运行程序,观看实验结果。 4、 编写实验报告。 五、 实验提示

74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。 六、 实验结果

程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2 应该点亮。 七、 程序框图(如图1) 实验程序: 实验

1

; * cs0<->cs273,D0~D7依次接LED1~LED8*;

IOPORT EQU 0A800H LS273 EQU IOPORT+0A0H CODE SEGMENT

ASSUME CS:CODE

START: MOV AH,2 ;回车符 MOV DL,0DH INT 21H

MOV AH,1 ;等待键盘输入 INT 21H

CMP AL,27 ;判断是否为ESC键 JE EXIT ;若是则退出

MOV DX,LS273 ;若不是,从2A8H输出其ASCII码 OUT DX,AL

JMP START ;转start EXIT: MOV AH,4CH ;返回

INT 21H

CODE ENDS

END START

实验结果:从键盘输入数字0~9可以通过LED显示相应的二进制代码(亮灯为0,熄灯为1)

例如从键盘输入数字3,灯亮情况led4~led1对应0011;即led4~led1从到左表示0011,led4、led3低位,led2、led1高位。 实验 2

;*cs0<->cs244,IN0~IN7依次接k1~k8 *; IOPORT EQU 0A800H LS244 EQU IOPORT+0A0H CODE SEGMENT

ASSUME CS:CODE

START: MOV DX,LS244 ;从2A0输入一数据 IN PUSH MOV SHR CMP JA ADD JMP HEX1: ADD NN: MOV MOV INT POP AND CMP JA ADD JMP HEX2: ADD MM: MOV MOV INT MOV INT MOV INT MOV MOV INT JNZ JE EXIT: MOV INT CODE ENDS

END AL,DX AX

CL,4H AL,CL AL,09 HEX1 AL,30H NN AL,37H DL,AL AH,02 21H AX AL,0FH AL,09 HEX2 AL,30H MM AL,37H DL,AL AH,02H 21H

DL,0DH 21H

DL,0AH 21H

AH,06 DL,0FFH 21H EXIT

START AH,4CH 21H START

;转换为16进制显示 ;显示回车符 ;显示换行符 ;是否有键按下 ;若无,则转start ;返回 实验结果:通过调动平推开关k0~k7,在电脑屏幕上以16进制显示 ,led1~led4表示低四位,

led5~led8表示高四位。与e273.asm相似,例如:1100 0000(11表示开关下推, 0表示上推),屏幕上显示3; 实验 3

;* cs0<->cs273,D0~D7依次接LED1~LED8 cs1<->cs244,IN0~IN7依次接k1~k8 *; IO_BASEADDR EQU 0A400H ;IO基地址,用于访问PCI9052寄存器 IOPORT EQU 0A800H LS273 EQU IOPORT+0A0H CS244 EQU IOPORT+0B0H CODE SEGMENT

ASSUME CS:CODE START: MOV DX,CS244

IN AX,DX ;从244读入逻辑开关状态 MOV DX,LS273

OUT DX,AX ;从273输出读到的数据 MOV DL,0FFH ;判断是否有按键 MOV AH,06H INT 21H

JZ START ;若无,则继续读入数据并同时输出

EXIT: MOV AH,4CH ;返回

INT 21H CODE ENDS

END START

实验结果:从74ls244读入数据(按k0-k7),通过74ls373输出(led1-led8灯表示)调

动平开关高电平熄灯,低电平亮灯,即上推熄灯,下推亮灯。

实验图1

联系客服:779662525#qq.com(#替换为@)