东北大学微机原理上机报告(全)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理实验报告
专业班级通信1301 姓名张麒学号 20135440 实验题目简单IO扩展日期 2015.5.25
实验一、简单I/O扩展实验
一、实验目的
1、熟悉74LS273、74LS244芯片,并了解其应用方法。
2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。
二、实验设备
MUT-III型实验箱、计算机一套。
三、实验内容
逻辑电平开关的状态通过74LS244输入,然后通过74LS273锁存输出,利用
发光二极管LED显示输出的状态。
根据实验框图自编程序。244端口地址04A0H,273端口地址04B0H。
说明:程序的起始地址为0100H,编写程序时,用伪指令定义此位地址,即:ORG 0100H。这时, CS=0100H,IP=0100H。代码段、数据段、堆栈段在同一个64K的地址空间中。
四、简单I/O的工作原理
本实验用到两部分电路:开关量输入输出电路、简单I/O口扩展电路。
开关量输入输出电路:开关量输入电路由8只开关组成,每只开关有两个位置H和L,一个位置代表高电平,一个位置代表低电平。对应的插孔是:K1~K8。开关量输出电路由8只LED组成,对应的插孔分别为LED1~LED8,当对应的插孔接低电平时,对应的发光二极管点亮。
简单I/O口扩展电路:输入缓冲电路由74LS244组成,输出锁存电路由上升沿锁存器74LS273组成。74LS244是一个扩展输入口,74LS273是一个扩展输出口,同时它们都是一个单向驱动器,以减轻总线的负担。74LS244的输入信号由插孔IN0~IN7输入,插孔CS244是其选通信号,其它信号线已接好;74LS273的输出信号由插孔O0~O7输出,插孔CS273是其选通信号,其它信号线已接好。
注:双击鼠标,可放大图形
五、实验步骤
1、实验连线:
C PLD单元的输出端插孔CS0、CS1分别与244/273单元的片选信号CS244、CS273相连;
电平开关的输出端KK1~KK8分别与244/273单元的IN0~IN7对应连接;
244/273单元的输出端O0~O7分别与发光二极管的输入端LED 1~L ED8对应连接。
2、编辑程序
启动:首先打开实验装置的电源开关,这时实验装置上的六位数码管显示1996-7字样,过几秒钟会显示P-。接着点击桌面TECH图标,运行8086实验系统。在窗口中,选择通讯口COM3(接USB口)或COM1(接串口),波特率9600,点击确定,同时按实验装置RST键,进入连机操作模式,这时在实验装置上会显示C- 字样。
编辑:点击快捷图标[新建],进入编辑系统。将编写好的源程序逐一输入,然后保存。这时在桌面上就会产生以new .asm 命名的文件。
编译运行:选择[编译]菜单,点击[编译或连接],对源程序进行汇编、连接,这时在屏幕左下方的窗口有信息显示:程序下传成功,编译,连接完成;然后点击快捷图标RUN,即运行程序。
3、调试通过后,全速运行程序,观看实验结果。
4、编写实验报告,完成思考题与练习。
六、实验框图
开始
初始化
读输入至AL
输出AL
结束
七、思考与练习
1、KK1-KK4开关向上,让LED1-LED4发光二极管灯灭,而其它发光二极管灯保持不变,程序如何修改。
2、74LS244、74LS273的片选信号可以改变,若244/273的片选信号改为与CPLD单元中的CS2、CS3(04c0h、04d0h)相连,应如何修改程序中相应地址。
3、理解程序清单中IN和OUT指令的作用。
4、写出实验源程序,并给出注释。
一.实验源程序
CODE SEGMENT
ASSUME CS:CODE
ORG 100H ;伪指令用于指示如何按段组织程序和使用存储器
START:MOV DX,04A0H ;把74LS244的地址写到DX里
IN AL,DX ;把DX上的内容读数据到CPU中的AL里
MOV DX,04B0H ;把74LS273的地址写到DX里
OUT DX,AL ;把AL上的数据写到CPU里
JMP START ;无条件转移到START指令,循环执行源程序
CODE ENDS ;伪指令用于指示如何按段组织程序和使用存储器
END START
二.思考题
1.KK1-KK4开关向上,让LED1-LED4发光二极管灯灭,而其它发光二极管灯保持不变,程序如何修改。
源程序:
CODE SEGMENT
ASSUME CS:CODE ;伪指令用于指示如何按段组织程序和使用存储器
ORG 100H
START:MOV DX,04A0H ;把74LS244的地址写到DX里
IN AL,DX ;把DX上的内容读数据到CPU中的AL里
XOR AL,0FH ;使用异或指令将DX低四位取反,使其开关向上时电平反转
MOV DX,04B0H ;把74LS273的地址写到DX里
OUT DX,AL ;把AL上的数据写到CPU里
JMP START ;无条件转移到START指令,循环执行源程序
CODE ENDS ;伪指令用于指示如何按段组织程序和使用存储器
END START
2.74LS244、74LS273的片选信号可以改变,若244/273的片选信号改为与CPLD 单元中的CS2、CS3(04c0h、04d0h)相连,应如何修改程序中相应地址。
CODE SEGMENT
ASSUME CS:CODE ;伪指令用于指示如何按段组织程序和使用存储器
ORG 100H
START:MOV DX,04C0H;把74LS244的地址写到DX里
IN AL,DX ;把DX上的内容读数据到CPU中的AL里
MOV DX,04D0H;把74LS273的地址写到DX里
OUT DX,AL ;把AL上的数据写到CPU里
JMP START ;无条件转移到START指令,循环执行源程序
CODE ENDS ;伪指令用于指示如何按段组织程序和使用存储器
END START