微机原理简单输入输出实验报告

更新时间:2023-09-16 14:18:01 阅读量: 高中教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《微机实验及课程设计》实验报告

东南大学

《微机实验及课程设计》

实验报告

实验四(1) 简单输入输出

一. 实验目的与内容

(一) 实验目的

1)进一步掌握TPC实验装置的基本原理和组成结构;

2)掌握利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况;

3)掌握简单并行输入输出接口的工作原理及使用方法,进一步熟悉掌握输入输出单元的功能

0

《微机实验及课程设计》实验报告

和使用。

(二) 实验内容及要求

1、输出接口输出,根据8个发光二极管发光的情况验证编程从键盘输入一个字符或数字,将其ASCII码通过正确性。(输出端口实验 必做)

2、用逻辑电平开关预置某个字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来。(输入端口实验 必做)

3、利用基本实验(1)中的输出锁存电路,设计L0~L7为流水灯,流水间隔时间由软件产生。(输出端口实验)

4、利用基本实验(2)中的输入电路,监测逻辑电平开关K0~K7的变换,当开关状态为全开时,在屏幕上显示提示信息并结束程序。 (输入端口实验) 要求:

1、输入输出端口应该可以响应外设的连续变化。 2、输出按ESC键退出;输入按任意键退出。 3、内容3、4比做一题,选做一题

二. 实验基本原理 (一)基本原理

简单并行输出实验:八D触发器74LS273的八个输入端接数据总线D0~D7,从键盘输入一

个字符或数字,通过2A8H~输出接口输出该字符或者数字代表的ASCII码,再通过8个发光二极管发光显示二进制数码,从而验证编程以及电路的正确性。

简单并行输入实验:八缓冲器74LS244的八个输出端接数据总线D0~D7,8个输入端分别接逻辑电平开关K0~K7,在逻辑电平开关上预置任意字符的ASCII码,编程将此ASCII码通过2A0H~输入,ASCII码对应字符显示在屏幕上,从而验证编程及电路的正确性。

(二)实验接线图

1

《微机实验及课程设计》实验报告

图 3.4-1 简单并行输出接口

图 3.4-1 简单并行输入接口

(三)主程序流程图

开始等待键盘输入开始自端口2A0H输入ASCII码保存输入的ASCII码至DL是ESC键YN自端口2A8H输出ASCII码N显示字符有键按下Y

结束

结束

输出参考流程图 输入参考流程图

2

《微机实验及课程设计》实验报告

三. 方案实现与测试(或调试) (一)实验代码

必做1:代码与参考程序相同,主要是替换主机的tpc卡的i/o地址 ioport

ls273

equ 0d400h-0280h

equ ioport+2a8h

必做2:代码与教材参考程序相同,同样需要替换主机的tpc卡的i/o地址 ioport

equ 0d400h-0280h

ls244

equ ioport+2a0h

必做3(选择输出实验)代码如下: ioport equ 0b800h-0280h ls273

equ ioport+2a8h

stacks segment stack

db 100 dup (?)

stacks ends code segment

assume cs:code,ss:stacks

main proc far start:mov ax,stacks mov ss,ax

mov ah,2 ;回车符 mov dl,0dh

int 21h

mov ah,1 ;等待键盘输入

int 21h

judge:cmp al,27 ;判断是否为ESC键 je exit ;若是则退出 cmp al,31h

je X1

X2:mov cx,8

int 21h jnz judge

je X2 ;X1:mov cx,8 mov al,01h

mov dx,ls273

XX1:out dx,al call delay rol al,1 loop XX2

mov ah,06 ; mov dl,0ffh int 21h jnz judge

je X1 ;exit: mov ah,4ch ;

int 21h

main endp

delay proc near 3

若无,则转X2

是否有键按下若无,则转X1

返回DOS

;延时子程序

《微机实验及课程设计》实验报告

mov al,01h mov dx,ls273

mov bx,3000

mov cx,0

zzz:

XX2:out dx,al

call delay rol al,1

zz: loop zz

dec bx jne zzz ret delay endp

loop XX2

mov ah,06 ;是否有键按下 mov dl,0ffh

code ends end start

(二)实验调试结果

首先,实验运行之前应该检测硬件是否正常,在正常的情况下,运行实验代码,检测试验结果,运行结果如下:

实验1:从键盘输入不同的字母,灯可以连续响应变化,按照字母的ASCII,实现灯的亮灭。 实验2:可以实现通过开关控制输入的字母在电脑上显示,改变开关的开与关(高低电平)

可以实现题目要求。

实验3 :可以实现流水灯,任意从键盘上按下一个键子就可以启动流水灯,按esc键可以停

止程序。

四.分析与总结

在简单输出接口电路中74LS273作为一个输出缓冲器,其内部结构为八个触发器,电路中一旦有来自地址译码器的译码信号2A0H,它就能将来自数据总线的数据锁存起来,等到/IOW(输入输出写)信号有效地时候再将数据送到端口上,本实验中是七个LED灯。

同样的在简单输入电路中74LS244充当一个三态的输入缓冲器,电路中一旦有来自地址译码器的译码信号2A8H以及/IOR(输入输出读)有效时,它就将由开关所代表的一个字节的数据送到数据总线上。

总结以上两种电路都可以看出,输入输出电路中都会有一个缓冲器作为数据传输中间介质,目的是让外部IO的时序与CPU匹配。

4

本文来源:https://www.bwwdw.com/article/2qxh.html

Top