微型计算机简单并行接口实验

一、实验目的

掌握简单并行接口的工作原理及使用方法。

二、实验设备与环境

TPC-2003A通用微机接口实验箱,windows XP运行环境。

三、实验内容、程序清单及运行结果

1. 实验内容

1)按下面图2简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器(通过CLR引脚决定是否进行锁存,将输入端来自数据总线的数据锁存到Q1-Q8的输出端,输出到发光二极管,点亮对应的灯,上升沿有效,或门,从低电平到高电平,才能产生上升沿),8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。

2)编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。

3)按下面图3简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。

4)用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。
在这里插入图片描述

2. 编程提示

上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令:

​ MOV AL, 数据

MOV DX,2A8H

​ OUT DX,AL

通过上述并行接口输入数据需要2条指令:

​ MOV DX,2ADH

IN AL,DX。

3. 流程图

在这里插入图片描述

4. 程序清单

1)参考程序1:

code segment

assume cs:code

start: mov ah,2 ;回车符 CPU执行数据传送指令,传输给ah寄存器,ah寄存器获得立即数

​ mov dl,0dh CPU继续执行数据传送指令,将立即数0dh传送给dl寄存器

​ int 21h CPU执行中断指令,根据中断类型码获得类型号21h,CPU执行dos功能调用中断子程序,根据入口参数ah所提供的功能号2,CPU转到 显示一个字符的子模块,根据入口参数dl所提供的数据为0dh(0dh是回车符号的ASCII码),其结果显示一个回车符(有入口,入口是dl寄存器,没有出口)

​ mov ah,1 ;等待键盘输入 CPU执行数据传送指令,将立即数1传送给ah寄存器

​ int 21h CPU继续执行中断子程序,根据中断类型号21h转到dos功能调用中断服务子程序中,CPU在执行dos功能调用的中断服务子程序时,根据入口参数ah寄存器所提供的功能号为1转到等待键盘输入的子模块,当按下一个键时,其键的ASCII码值通过出口参数al寄存器返回(没有入口,只有出口,al寄存器是出口)。

​ cmp al,27 ;判断是否为ESC键 比较指令,相当于减法指令,不影响结果,只允许标志位ZF,若按下的键为ESC键,ZF=1,若不是ESC键,ZF=0

​ je exit ; 若是则退出 条件转移指令,若ZF为1,条件满足,转到标号为exit处

​ mov dx,2a8h ;若不是,从2A8H输出其ASCII码

​ out dx,al CPU执行IO的写指令,将al寄存器所提供的值(按键的ASCII码值)写到端口地址02a8所指定的8D触发器中(相当于存储器),通过输出端输出到发光二极管,点亮对应的灯。接下来结合时序图和程序原理图分析该指令执行的结果。

​ jmp start ;转start

exit: mov ah,4ch ;返回DOS 继续执行数据传送指令,将立即数4ch传送给ah寄存器

​ int 21h CPU执行中断指令,根据提供的类型号为21h,CPU执行dos功能调用的中断服务子程序,CPU在执行dos功能调用的中断服务子程序时,根据入口参数ah所提供的功能号为4ch,转到返回dos的子模块,结果返回到操作系统。若按下其他键(不是ESC),条件不满足,CPU顺序执行,将立即数02a8传送给dx寄存器

code ends

​ end

2)参考程序2:

code segment

assume cs:code

start: mov dx,2a0h ;从2A0H输入一数据

​ in al,dx

​ mov dl,al ;将所读数据保存在DL中

​ mov ah,02 ;显示ASCII码为DL的字符

​ int 21h

​ mov dl,0dh ;显示回车符

​ int 21h

​ mov dl,0ah ;显示换行符

​ int 21h

​ mov ah,1 ;是否有键按下

​ int 16h

​ je start ;若无,则转start

exit: mov ah,4ch ;返回DOS

​ int 21h

code ends

​ end

在这里插入图片描述

在这里插入图片描述
5. 运行结果

四、实验结论、实验体会

答辩:1、本次实验是简单并行接口输出实验。2、按照原理图连接好线路,打开实验箱电源,通过集成开发环境将简单并行接口输出实验程序,进行编辑,输入,然后进行编译,生成目标代码,点击运行,从键盘上输入一个字符,其ASCII码的值通过简单并行输出接口输出到发光二极管,点亮对应的灯。结合原理图,时序图,程序代码着手分析其运行的结果。CPU首先从Start开始执行指令…,接下来结合时序图和程序原理图分析该指令执行的结果。CPU执行IO的写指令进入T1时刻,产生16位的有效地址,8088…

以上是唐老师上课的笔记。未完不待续
  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值