预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共30页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

信息与通信工程学院微机原理硬件实验报告302013年微机原理硬件实验报告学院:信息与通信工程学院班级:2011211104姓名:实验一I/O地址译码一.实验目的掌握I/O地址译码电路的工作原理。二.实验原理和内容1.实验电路如图1-1所示其中74LS74为D触发器可直接使用实验台上数字电路实验区的D触发器74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出每个输出端包含8个地址Y0:280H~287HY1:288H~28FH……当CPU执行I/O指令且地址在280H~2BFH范围内译码器选中必有一根译码线输出负脉冲。例如:执行下面两条指令MOVDX2A0HOUTDXAL(或INALDX)Y4输出一个负脉冲执行下面两条指令MOVDX2A8HOUTDXAL(或INALDX)Y5输出一个负脉冲。原理:地址2A0H的A5A4A5为100在输入或输出时IOW或IOR为0使得74LS138被选中经过译码在Y4口输出负脉冲。其他同理。图1-1利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……)时间间隔通过软件延时实现。2.接线:Y4/IO地址接CLK/D触发器Y5/IO地址接CD/D触发器D/D触发器接SD/D角发器接+5VQ/D触发器接L7(LED灯)或逻辑笔程序流程图开始设置循环次数输出负脉冲点亮L7调用延时子程序延时输出另一个负脉冲熄灭L7调用延时子程序延时循环次数是否到零结束否是源程序DATASEGMENTDATAENDSSTACKSEGMENTSTACK'STACK'DB100HDUP(?)STACKENDSCODESEGMENTASSUMECS:CODEDS:DATASS:STACK;延时子程序DELAYPROCNEARMOVBX500PUSHCXLOOP2:MOVCX0FFFHWAIT:LOOPWAITDECBXJNZLOOP2POPCXRETDELAYENDPSTART:MOVCX0FFFFH;二极管闪烁部分LOOP1:MOVDX2A0H;灯亮OUTDXALCALLDELAYMOVDX2A8H;灯灭OUTDXALCALLDELAYLOOPLOOP1CODEENDSENDSTART实验结果LED7正常闪烁显示实验总结这是我们第一次做微原硬件实验我开始一直觉得编程很重要发现按照实验要求很快就编出了程序完成了实验但是当给老师验收时老师问我为什么向2A0口输出一下就会在Y4产生一个负脉冲我瞬间就僵住了的确我没有考虑过这个问题。后来经过我对电路图的分析思考得出了正确的结论我才明白硬件才是这个实验的核心最重要的是要理解硬件是如何工作的而不是仅仅按照要求编个程序就可以了。同时我也十分感谢老师对我们的严格要求!实验二简单并行接口一.实验目的掌握简单并行接口的工作原理及使用方法。二.实验原理和内容1.按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通用插座74LS32用实验台上的“或门”)。74LS273为八D触发器8个D输入端分别接数据总线D0~D78个Q输出端接LED显示电路L0~L7。2.编程从键盘输入一个字符或数字将其ASCⅡ码通过这个输出接口输出根据8个发光二极管发光情况验证正确性。3.按下面图4-2-2简单并行输入接口电路图连接电路(74LS244插通用插座74LS32用实验台上的“或门”)。74LS244为八缓冲器8个数据输入端分别接逻辑电平开关输出K0~K78个数据输出端分别接数据总线D0~D7。4.用逻辑电平开关预置某个字母的ASCⅡ码编程输入这个ASCⅡ码并将其对应字母在屏幕上显示出来。5.接线:1)输出按图4-2-1接线(图中虚线为实验所需接线74LS32为实验台逻辑或门)2)输入按图4-2-2接线(图中虚线为实验所需接线74LS32为