北邮微原硬件实验报告.doc
《北邮微原硬件实验报告.doc》由会员分享,可在线阅读,更多相关《北邮微原硬件实验报告.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 2013年微机原理硬件实验报告 学 院:信息与通信工程学院班 级:2011211104姓 名: 实验一 I/O地址译码 一实验目的 掌握I/O地址译码电路的工作原理。 二实验原理和内容 1.实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H287H,Y1:288H28FH, 当CPU执行I/O指令且地址在280H2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,
2、AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一个负脉冲。 原理:地址2A0H的A5,A4,A5为100,在输入或输出时,IOW或IOR为0,使得74LS138被选中,经过译码,在Y4口输出负脉冲。其他同理。 图1-1利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、),时间间隔通过软件延时实现。 2.接线: Y4/IO地址 接 CLK/D触发器 Y5/IO地址 接 CD/D触发器 D/D触发器 接 SD/D角发器 接 +5V Q/D触发器 接 L7(LED灯)或 逻辑笔 三 程序流程图 开始 设置循环
3、次数 输出负脉冲点亮L7调用延时子程序延时 输出另一个负脉冲,熄灭L7调用延时子程序延时循环次数是否到零 结束否是 四 源程序DATA SEGMENTDATA ENDSSTACK SEGMENT STACK STACK DB 100H DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK;延时子程序DELAY PROC NEARMOV BX,500PUSH CXLOOP2:MOV CX,0FFFHWAIT: LOOP WAITDEC BXJNZ LOOP2POP CXRETDELAY ENDPSTART:MOV CX,0FFF
4、FH;二极管闪烁部分LOOP1:MOV DX,2A0H;灯亮OUT DX,ALCALL DELAYMOV DX,2A8H;灯灭OUT DX,ALCALL DELAYLOOP LOOP1CODE ENDSEND START五 实验结果 LED7正常闪烁显示六. 实验总结这是我们第一次做微原硬件实验,我开始一直觉得编程很重要,发现按照实验要求很快就编出了程序,完成了实验,但是当给老师验收时,老师问我为什么向2A0口输出一下,就会在Y4产生一个负脉冲,我瞬间就僵住了,的确我没有考虑过这个问题。后来,经过我对电路图的分析思考,得出了正确的结论,我才明白,硬件才是这个实验的核心,最重要的是要理解硬件是如
5、何工作的,而不是仅仅按照要求编个程序就可以了。同时,我也十分感谢老师对我们的严格要求! 实验二 简单并行接口 一实验目的 掌握简单并行接口的工作原理及使用方法。 二实验原理和内容 1.按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0D7,8个Q输出端接LED显示电路L0L7。 2.编程从键盘输入一个字符或数字,将其ASC码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。 3.按下面图4-2-2简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32
6、用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0K7,8个数据输出端分别接数据总线D0D7。 4.用逻辑电平开关预置某个字母的ASC码,编程输入这个ASC码,并将其对应字母在屏幕上显示出来。 5.接线: 1)输出 按图4-2-1接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门) 2)输入 按图4-2-2接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门) 由于,我的实验台上的芯片是74LS273,因此本实验仅涉及74LS273输出。三 程序流程图 四源程序DATA SEGMENTDATA ENDSSTACK SEGMENT STACK
7、 STACK DB 100 DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AH,1;键盘输入 INT 21H CMP AL,27;检测是否为ESC键 JZ EXIT MOV DX,2A8H;输出 OUT DX,AL JMP START;返回DOSEXIT: MOV AX,4C00H INT 21HCODE ENDS END START五实验结果 键盘输入字符,然后二极管显示键盘输入字符的ASC码六实验总结本次实验相较上一次实验,顺利很多,因为有了第一次实验的基础,我在编代码之前,先仔细研究课硬件电路
8、图,分析了整个过程中硬件是如何工作的,都会有怎样的反应,而后才编写了程序,并验收通过。 实验三 可编程并行接口8255 一实验目的 通过实验,掌握8255工作于方式0以及设置A口为输出口,C口为输入口的方法。 二实验原理和内容 18255的工作方式 一片8255内部有3个端口,A口可以工作在方式0、方式1或方式2,B口可以工作在方式0、方式1,C口可以工作在方式0。 方式0是基本型输入/输出。这种方式和外设交换数据时,8255端口与外设之间不使用联络线。 方式1为选通型输入/输出。用这种方式和外界交换数据时,端口和外设之间要有联络信号。 方式2是双向数据传送,仅A口有这项功能。当A口工作在方式
9、2时,B口仍可以工作在方式0或方式1,但此时B口方式1只能用查询方式与CPU交换信息。 2. 工作方式选择字8255工作方式选择字共8位(如图),存放在8255控制寄存器中。最高位D7为标志位,D7=1表示控制寄存器中存放的是工作方式选择字,D7=0表示控制寄存器中存放的是C口置位/复位控制字。 3C口置/复位控制字8255的C口可进行位操作,即:可对8255C口的每一位进行置位或清零操作,该操作是通过设置C口置/复位字实现的。C口置/复位字共8位,各位含义如下: 48255A的控制信号与传输动作的对应关系 : 5命令字与初始化编程 8255有两个命令字,即方式选择控制字和C口置0/置1控制字
10、,初始化编程的步骤是: 向8255控制寄存器写入“方式选择控制字”,从而预置端口的工作方式。 当端口预置为方式1或方式2时,再向控制寄存器写入“C口置0/置1控制字”。这一操作的主要目的是使相应端口的中断允许触发器置0,从而禁止中断,或者使相应端口的中断允许触发器置1,从而允许端口提出中断请求。 注意:“C口置0/置1控制字”虽然是对C口进行操作,但是该控制字是命令字,所以要写入控制寄存器,而不是写入C口控制寄存器。 向8255数据寄存器写入“数据”或从8255数据寄存器读出“数据” 6.实验内容(1)实验电路如图4-3-1,8255C口接逻辑电平开关K0K7,A口接LED显示电路L0L7。
11、(2)编程从8255C口输入数据,再从A口输出。 (3)接线:PC7PC0/8255 接 K7K0/逻辑电平开关 PA7PA0/8255 接 L7L0/LED显示 CS/8255 接 Y1/IO地址 8255控制寄存器端口地址-28BH, A口的地址-288H, B口的地址-289H,C口的地址-28AH。 三程序流程图 四源程序DATASEGMENTDATAENDSSTACKSEGMENT DB100 DUP(?)STACKENDSCODESEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTARTPROC FAR PUSHDSXOR AX,AX PUSHAX ;
12、准备返回DOS MOV AL,10001001B;8255初始化,设置A口为输出,C口输入 MOV DX,28BH OUT DX,AL LOOP1: MOV DX,28AH ;从C口读入开关状态 IN AL,DX MOV DX,288H ;向A口输出,点亮对应二极管 OUT DX,AL JMP LOOP1RETSTARTENDPCODE ENDS END START 五实验结果打开开关,对应的LED灯被点亮六实验总结本次实验是关于并行接口8255,由于在实验前我们还没有讲8255,使得我在做实验过程中发生了很多困难,主要是在对硬件连接的分析上一直没有搞懂,后来我和周围同学看着课本一点点的讨论,
13、最终弄懂了硬件连接和响应的过程,也使得我们对8255有了深刻的理解,画出硬件连接图后,很快编写了程序,完成了实验内容。在此,还要感谢老师对我们严格要求,使得我们能真正搞懂硬件,再去完成软件编程。 实验四 七段数码管 一实验目的 掌握数码管显示数字的原理 二 实验原理和内容 1.数码管原理实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。七段数码管的字型代码表如下表: 2.实验内容 静态显示:按4-4-1连接好电路,将8255的A口PA0PA7分别与七段数码管的段码驱动输入端adp相连,位码驱动输入端S0、S1 、S2、S3接
14、PC0、PC1、PC2、PC3,编程在数码管显示自己的学号的后四位。(或编程在数码管上循环显示“00-99”, 位码驱动输入端S0、S1 接PC0、PC1;S2、S3接地。) 3.接线: PA7PA0/8255 接 dpa/LED数码管 PC3PC0/8255 接 S3S0/LED数码管 CS/8255 接 Y1/IO地址 三程序流程图 四源程序DATA SEGMENTDATA ENDSSTACK SEGMENT STACK STACK DB 100 DUP(?)STACK ENDSCODESEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,D
15、ATA MOVDS,AX MOV DX,28BH;写控制口,设置A,C口为输出 MOV AL,80H OUT DX,AL MOV CX,100AGAIN:MOV DX,28AH;第一个数码管显示MOV AL,00HOUT DX,ALMOV DX,288HMOV AL,3FHOUT DX,ALMOV DX,28AHMOV AL,01HOUT DX,ALMOV DX,28AH ;第二个数码管显示MOV AL,00HOUT DX,ALMOV DX,288HMOV AL,5BHOUT DX,ALMOV DX,28AHMOV AL,02HOUT DX,ALMOV DX,28AH ;第三个数码管显示MOV
16、 AL,00HOUT DX,ALMOV DX,288HMOV AL,06HOUT DX,ALMOV DX,28AHMOV AL,04HOUT DX,ALMOV DX,28AH ;第四个数码管显示MOV AL,00HOUT DX,ALMOV DX,288HMOV AL,3FHOUT DX,ALMOV DX,28AHMOV AL,08HOUT DX,AL LOOP AGAIN MOV AH,4CHINT 21HCODEENDSEND START五实验结果 数码管显示我的学号后四位0120六实验总结 实验中遇到的问题: 由于有上一个实验的基础,我在做这个实验时对8255的工作方式和硬件连接已经十分熟
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北邮微原 硬件 实验 报告
限制150内