- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理硬件实验
I/O地址译码
简单并行接口
班级:
姓名:
学号:
一 实验目的
实验一:掌握I/O地址译码电路的工作原理。
实验二:掌握简单并行接口的工作原理及使用方法。
二、实验原理和内容
实验一:
1、实验电路如图4-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输出一个负脉冲。
图4-1-1
利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
2、接线: Y4/IO地址 接 CLK/D触发器
Y5/IO地址 接 CD/D触发器
D/D触发器 接 SD/D角发器 接 +5V
Q/D触发器 接 L7(LED灯)或 逻辑笔
实验二:
1、按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。
2、编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。
图4-2-1
3、接线:
按图4-2-1接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门)
三 硬件接线图及软件程序流程图
1硬件接线图
实验一:
实验二:
2软件程序流程图
实验一:
实验二:
四 源程序
实验一:
DATA SEGMENT
DATA ENDS
STACK SEGMENT STACK STACK
DB 100H DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
;延时子程序
DELAY1 PROC NEAR
MOV BX,500H
PUSH CX
LOOP2: MOV CX,0FFFH
WAIT1: LOOP WAIT1
DEC BX
JNZ LOOP2
POP CX
RET
DELAY1 ENDP
;L7闪烁
START: MOV CX,0FFFFH
LOOP1: MOV DX,2A0H ;灯亮
OUT DX,AL
CALL DELAY1
MOV DX,2A8H ;灯灭
OUT DX,AL
CALL DELAY1
LOOP LOOP1 ;循环闪烁
CODE ENDS
END START
实验二:
DATA SEGMENT
DATA ENDS
STACK SEGMENT STACK STACK
DB 100 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AH,1 ;键盘输入
INT 21H
CMP AL,27 ;判断是否为ESC键
JZ EXIT
MOV DX,2A8H
OUT DX,AL ;输出
JMP START
;返回DOS
EXIT: MOV DX,2A8H
MOV AL,0
OUT DX,AL ;所有灯灭
MOV AX,4C00H
INT 21H
CODE ENDS
END START
五 实验结果
实验一:L7闪烁
实验二:从键盘输入字符或数字,若不是Esc键,则二极管显示其ASCII码情况,若按下ESC,则返回dos,且各LED灯灭。
六:实验总结
1主要问题是对题目中所给的硬件接线图不是很理解,如第二个实验中或门的作用。向老师请教后明白了硬件接线图的原理,做实验就容易许多。
2在第一个实验中起先对AL进行了赋值,后来发现是没必要的,不对AL赋值对产生负脉冲无影响,后来删掉了相应的
文档评论(0)