北邮微原硬件实验报告
- 格式:doc
- 大小:752.00 KB
- 文档页数:31
2013年微机原理硬件实验报告
学院:信息与通信工程学院班级:2011211104
姓名:
实验一 I/O地址译码
一.实验目的
掌握I/O地址译码电路的工作原理。
二.实验原理和内容
1.实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。
译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。
例如:执行下面两条指令
MOV DX,2A0H
OUT DX,AL(或IN AL,DX)
Y4输出一个负脉冲,执行下面两条指令
MOV DX,2A8H
OUT DX,AL(或IN AL,DX)
Y5输出一个负脉冲。
原理:地址2A0H的A5,A4,A5为100,在输入或输出时,IOW或I OR为0,使得74LS138被选中,经过译码,在Y4口输出负脉冲。其他同理。
图1-1
利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
2.接线:Y4/IO地址接CLK/D触发器
Y5/IO 地址 接 CD/D 触发器
D/D触发器 接 SD/D 角发器 接 +5V
Q /D 触发器 接 L7(L ED 灯)或 逻辑笔
三.程序流程图
四.源程序
DA TA ﻩSE GMENT
D ATA ﻩﻩENDS
ST ACK SE GME NT ST ACK 'STA CK'
DB 100H DU P(?)
STA CK ENDS
否
CODE SEGMENT
ﻩASSUME ﻩCS:CODE,DS:DATA,SS:STACK
;延时子程序
DELAYPROCﻩNEAR
ﻩMOV BX,500
ﻩPUSHﻩCX
LOOP2: ﻩMOV CX,0FFFH
WAIT: LOOPWAIT
ﻩﻩDECBX
ﻩﻩJNZ LOOP2
POPﻩCX
ﻩRET
DELAYﻩENDP
START:ﻩﻩMOV CX,0FFFFH
ﻩ;二极管闪烁部分
LOOP1: MOV DX,2A0H ﻩ;灯亮
ﻩOUT DX,AL
ﻩCALL ﻩDELAY
ﻩﻩMOVDX,2A8Hﻩ;灯灭
ﻩOUT ﻩDX,AL
ﻩCALL DELAY
ﻩﻩLOOPLOOP1
CODE ﻩﻩENDS
END START
五.实验结果
LED7正常闪烁显示
六.实验总结
这是我们第一次做微原硬件实验,我开始一直觉得编程很重要,发现按照实验要求很快就编出了程序,完成了实验,但是当给老师验收时,老师问我为什么向2A0口输出一下,就会在Y4产生一个负脉冲,我瞬间就僵住了,的确我没有考虑过这个问题。
后来,经过我对电路图的分析思考,得出了正确的结论,我才明白,硬件才是这个实验的核心,最重要的是要理解硬件是如何工作的,而不是仅仅按照要求编个程序就可以了。
同时,我也十分感谢老师对我们的严格要求!
实验二简单并行接口
一.实验目的
掌握简单并行接口的工作原理及使用方法。
二.实验原理和内容
1.按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。
2.编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。
3.按下面图4-2-2简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。
4.用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。
5.接线:
1)输出
按图4-2-1接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门)
2)输入
按图4-2-2接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门)
由于,我的实验台上的芯片是74LS273,因此本实验仅涉及74LS273输出。
三.程序流程图
四.源程序
DATA SEGMENT
DATA ENDS
STACK ﻩSEGMENTSTACK'STACK'
ﻩDB100DUP(?)
STACK E NDS
CODE ﻩSEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV ﻩAH,1ﻩ;键盘输入
ﻩINT 21H
ﻩCMPAL,27;检测是否为ESC键
ﻩJZ ﻩﻩEXIT
ﻩMOV ﻩDX,2A8Hﻩ;输出
OUTﻩDX,AL
ﻩJMP START
;返回DOS
EXIT: MOV AX,4C00H
INT21H