ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:81.60KB ,
资源ID:11389365      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11389365.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(北京理工大学自动化专业微机原理硬件软件实验.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

北京理工大学自动化专业微机原理硬件软件实验.docx

1、北京理工大学自动化专业微机原理硬件软件实验微机原理与接口技术硬件实验报告 班级: : 学号:实验一: 8259中断控制器实验一、实验目的1. 掌握8259的工作原理。2. 掌握编写中断服务程序的方法。3. 掌握初始化中断向量的方法。二、实验容用单脉冲发生器的输出脉冲为中断源,每按一次产生一次中断申请,点亮或熄灭发光二极管。三、实验设备微机实验教学系统实验箱、8086CPU模块四、连线单脉冲发生器输出P+与8259的IR0相连8259的片选CS8259与CS0相连8259的INT与8086的INT相连8259的INTA与8086的INTA相连CS273与CS1相连00与LED1相连其它线均已连好

2、如下图:五、实验步骤(1)连线。(2)编辑程序,编译后,调试程序。(3)调试通过后,在中断服务程序设置断点,运行程序,当接收到中断请求后,程序停在中断服务程序的断点处。(4)撰写实验报告。六、实验源程序CODE SEGMENT PUBLICASSUME CS:CODEORG 100HSTART: MOV DX,4A0H ;写ICW1MOV AX,13HOUT DX,AXMOV DX,4A2H ;写ICW2MOV AX,80H ;IR0的中断向量码为80HOUT DX,AXMOV AX,01OUT DX,AX ;一般嵌套,非缓冲,非自动EOIMOV AX,0 ;写OCW1OUT DX,AX ;允

3、许中断;中断向量存放在(0000H:0200H)开始的四个单元里MOV AX,0MOV DS,AXMOV SI,200H ;中断类型号为80HMOV AX,OFFSET HINT ;中断服务程序的入口地址MOV DS:SI,AXADD SI,2MOV AX,CSMOV DS:SI,AXSTI ;开中断,设置IF=1JMP $ ;原地跳转HINT: ;中断服务程序XOR CX,0FFH ;CX取反MOV DX,4B0H ;CS273接口的地址,与8个LED灯相连MOV AX,CX ;输出高低电平控制LED灯的亮灭OUT DX,AXMOV DX,4A0H ;OCW2的地址MOV AX,20H ;一

4、般EOI命令,全嵌套方式OUT DX,AXIRET ;中断返回CODE ENDSEND START七、实验思考题1将P+连线连接到IR1IR7任意一个;重新编写程序。 将P+接到IR1,在原程序的基础上,把写ICW2的控制字改为81H,再把中断向量的入口地址改为0204H即可。程序如下:CODE SEGMENT PUBLICASSUME CS:CODEORG 100HSTART: MOV DX,4A0H ;写ICW1MOV AX,13HOUT DX,AXMOV DX,4A2H ;写ICW2MOV AX,81H ;IR0的中断向量码为81HOUT DX,AXMOV AX,01OUT DX,AX

5、;一般嵌套,非缓冲,非自动EOIMOV AX,0 ;写OCW1OUT DX,AX ;允许中断;中断向量存放在(0000H:0200H)开始的四个单元里MOV AX,0MOV DS,AXMOV SI,204H ;中断类型号为81HMOV AX,OFFSET HINT ;中断服务程序的入口地址MOV DS:SI,AXADD SI,2MOV AX,CSMOV DS:SI,AXSTI ;开中断,设置IF=1JMP $ ;原地跳转HINT: ;中断服务程序XOR CX,0FFH ;CX取反MOV DX,4B0H ;CS273接口的地址,与8个LED灯相连MOV AX,CX ;输出高低电平控制LED灯的亮

6、灭OUT DX,AXMOV DX,4A0H ;OCW2的地址MOV AX,20H ;一般EOI命令,全嵌套方式OUT DX,AXIRET ;中断返回CODE ENDSEND START实验现象:运行程序,触发脉冲发生器产生中断请求,相应二极管点亮。2设置OCW1,屏蔽某个中断请求,运行程序观察现象。 将IR0重新接入LED0,设置OWC1为01H,屏蔽中断IR0,则IR0的中断无法得到响应。程序如下:CODE SEGMENT PUBLICASSUME CS:CODEORG 100HSTART: MOV DX,4A0H ;ICW1的地址,写初始化命令字ICW1MOV AX,13H ;上升沿触发单

7、片8259,要写ICW4OUT DX,AXMOV DX,4A2H ;ICW2的地址,写中断向量码ICW2MOV AX,80H ;IR0的中断向量码为80HOUT DX,AXMOV AX,01 ;写中断结束控制字ICW4OUT DX,AX ;一般嵌套,非缓冲,非自动EOIMOV AX,01H ;写中断屏蔽字OCW1OUT DX,AX ;屏蔽IR0中断;中断向量存放在(0000H:0200H)开始的四个单元里MOV AX,0MOV DS,AXMOV SI,200H ;中断类型号为80HMOV AX,OFFSET HINT ;中断服务程序的入口地址MOV DS:SI,AXADD SI,2MOV AX

8、,CSMOV DS:SI,AXSTI ;开中断,设置IF=1JMP $ ;原地跳转HINT: ;中断服务程序XOR CX,0FFH ;CX取反MOV DX,4B0H ;CS273接口的地址,与8个LED灯相连MOV AX,CX ;输出高低电平控制LED灯的亮灭OUT DX,AXMOV DX,4A0H ;OCW2的地址MOV AX,20H ;一般EOI命令,全嵌套方式OUT DX,AXIRET ;中断返回CODE ENDSEND START实验现象:每按单脉冲发生器一次产生一次中断申请,但连接的发光二极管一直不亮。3. 设置OCW2,了解中断结束方式与设置优先权。将IR0和IR1都连接到P+上,

9、分别连接LED0和LED1到00和01。一般EOI命令,将IR0设置为最低中断优先级。程序如下:CODE SEGMENT PUBLICASSUME CS:CODEORG 100HSTART: MOV DX,4A0H ;ICW1的地址MOV AX,13H ;上升沿触发,单片8259,要写ICW4OUT DX,AXMOV DX,4A2H ;ICW2的地址MOV AX,80H ;IRO的中断向量码为80H,第三位自动写入OUT DX,AXMOV AX,01 ;写ICW4OUT DX,AX ;一般嵌套,非缓冲,非自动EOIMOV AX,0 ;写OCW1OUT DX,AX ;允许中断;IR0的中断向量存

10、放在(0000H:0200H)开始的四个单元里MOV AX,0MOV DS,AXMOV SI,200H MOV AX,OFFSET HINT MOV DS:SI,AXADD SI,2MOV AX,CSMOV DS:SI,AXSTI ;开中断,设置IF=1;IR1的中断向量存放在(0000H:0204H)开始的四个单元里MOV AX,0MOV DS,AXMOV SI,204HMOV AX,OFFSET HINT2MOV DS:SI,AXADD SI,2MOV AX,CSMOV DS:SI,AXJMP $ ;原地跳转HINT1: ;中断服务程序1XOR CX,0F0H ;CX高四位取反MOV DX

11、,4B0H ;CS273接口的地址,与8个LED灯相连MOV AX,CX ;输出高低电平控制LED灯的亮灭OUT DX,AXMOV DX,4A0H ;OCW2的地址MOV AX,E0H ;一般EOI命令,IR0优先级最低OUT DX,AXIRET ;中断返回HINT2: ;中断服务程序2XOR CX,00FH ;CX低四位取反MOV DX,4B0H ;CS273接口的地址,与8个LED灯相连MOV AX,CX ;输出高低电平控制LED灯的亮灭OUT DX,AXMOV DX,4A0H ;OCW2的地址MOV AX,E0H ;一般EOI命令,IR0优先级最低OUT DX,AXIRET ;中断返回C

12、ODE ENDSEND START实验现象:CS273的00与LED0相连,01与LED1相连,02与LED2相连,依次下去,直至07与LED7相连。每按单脉冲发生器一次产生一次中断申请,由于IR0的优先级比IR1低,故先响应IR1,后响应IR0,观察到第四位的LED灯先点亮或熄灭,高四位的LED灯后点亮或熄灭。八、实验心得本次实验让我熟悉了8086硬件实验系统的使用,对8259的部寄存器的功能也有了更加深入的认识,掌握了8259的初始化步骤和工作方式的选择,以及中断服务程序的编写。使用实验箱和编译软件对学习容的掌握的理解有很大帮助,让我更透彻地学习了知识。实验二 8255并行接口实验一、实验

13、容8255的A口作为输入口,与逻辑电平开关相连。8255的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。二、实验目的掌握8255的编程原理三、实验设备微机实验教学系统实验箱、8086CPU模块四、连线18255的PA0PA7分别与逻辑电平开关的K1K8相连。2PB0PB7分别与发光二极管电路的LED1LED8相连。3CS0与8255的片选CS8255相连。4其它线路均已连好。五、实验步骤(1)连线。(2)编辑程序,编译后,单步运行,调试程序。(3)调试通过后,全速运行,观察实验结果。(4)撰写实验报告。六、实验源程序CODE SEGMENT PUBL

14、IC ASSUME CS:CODE ORG 100H START: MOV DX,04A6H MOV AX,90H OUT DX,AX START1: MOV DX,04A0H IN AX,DX MOV DX,04A2H OUT DX,AX JMP START1 CODE ENDS END START七、思考题1.将片选线接到CS1CS7;重新编写程序。将片选线接到CS1上。在原程序的基础上,将控制口的地址改成04B6H,将A口的地址改成04B0H,将B口的地址改成04B2H。程序如下:CODE SEGMENT PUBLIC ASSUME CS:CODE ORG 100H START: MOV

15、 DX,04B6H MOV AX,90H OUT DX,AX START1: MOV DX,04B0H IN AX,DX MOV DX,04B2H OUT DX,AX JMP START1 CODE ENDS END START实验现象:实验将刚才的实验地址CS0换成了CS2。这里CS0的地址为04A0H,CS1-04B0H,CS2-04C0H,CS3-04D0H,CS4-04E0H,CS5-04F0H。这里我们将CS0换成了CS2。实验现象和上一个程序的实验现象相同。2.交换A B接线,A口输出、B口输入;重新编写程序。将A口接LED,B口接开关。原程序中,将方式控制字90H改成82H,ST

16、ART1中A、B口地址互换。程序如下:CODE SEGMENT PUBLIC ASSUME CS:CODE ORG 100H START: MOV DX,04A6H MOV AX,82H OUT DX,AX START1: MOV DX,04A2H IN AX,DX MOV DX,04A0H OUT DX,AX JMP START1 CODE ENDS END START实验现象:PB口的逻辑电平开关对应PA口的LED灯,对应的PB口开关给高电平,LED灯亮,对应的PB口开关给低电平,LED灯灭3.C口4位接LED;4位接开关;重新编写程序。将C口的高四位接开关,低四位接LED灯。在原程序的基

17、础上,方式控制字改成88H,加逻辑右移语句。程序如下:CODE SEGMENT PUBLIC ASSUME CS:CODE ORG 100H START: MOV DX,04A6H MOV AX,88H OUT DX,AX START1: MOV DX,04A4H IN AX,DX MOV CL,4 ROR AX,CL MOV DX,04A4H OUT DX,AX JMP START1 CODE ENDS END START实验现象:设置PC口低4位输入,高4位为输出。低四位接逻辑电平开关,高四位接LED灯。将8255控制字修改为将PC口低四位设置为输入,高四位设置为输出。PC口低四位的逻辑电

18、平开关对应PC口高四位的LED灯,对应的PC口低四位开关给高电平,LED灯亮,对应的PC口低四位开关给低电平,LED灯灭。实验三 8253可编程定时器一、实验目的 掌握8253定时/计数器的编程原理。二、实验容 8253计数器0,1,2工作于方波方式,观察其输出。三、实验设备 微机实验教学系统实验箱、8086CPU模块。四、连线 1. CS0与8253的片选CS8253相连 2. CLK3(750KHz)与8253CLK0相连 3. 8253的OUT0与8253CLK2相连 4. OUT2与发光二极管LED1相连其它线均已连好。五、实验步骤 1连线。 2编辑程序,编译后,跟踪运行,调试程序。

19、3调试通过后,全速运行,观察实验结果。 4撰写实验报告。六、实验源程序CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,04A6H MOV AX,36H OUT DX,AX MOV DX,04A0H MOV AX,7CH OUT DX,AX MOV AX,92H OUT DX,AX MOV DX,04A6H MOV AX,0B6H OUT DX,AX MOV DX,04A4H MOV AX,4 OUT DX,AX MOV AX,0 OUT DX,AX JMP $CODE ENDSEND START实验现象:LED灯一亮一灭时间频率一

20、样。七、思考题1. 定时器2计数值改为20H;观察其现象。实验程序:CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,04A6H MOV AX,36H OUT DX,AX MOV DX,04A0H MOV AX,7CH OUT DX,AX MOV AX,92H OUT DX,AX MOV DX,04A6H MOV AX,0B6H OUT DX,AX MOV DX,04A4H MOV AX,20H OUT DX,AX MOV AX,0 OUT DX,AX JMP $CODE ENDSEND START实验现象:LED灯一亮一灭,灭的时

21、间比亮的时间长一些。2. 将定时器2改为方式2分频器方式;观察其现象。实验程序:CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,04A6H MOV AX,36H OUT DX,AX MOV DX,04A0H MOV AX,7CH OUT DX,AX MOV AX,92H OUT DX,AX MOV DX,04A6H MOV AX,0B4H OUT DX,AX MOV DX,04A4H MOV AX,20H OUT DX,AX MOV AX,0 OUT DX,AX JMP $CODE ENDSEND START实验现象:LED灯在开

22、始一段时间后亮灭一次就不再有现象3. 将GATE2 接到开关上;观察其现象。实验程序:CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,04A6H MOV AX,34H OUT DX,AX MOV DX,04A0H MOV AX,7CH OUT DX,AX MOV AX,92H OUT DX,AX MOV DX,04A6H MOV AX,0B4H OUT DX,AX MOV DX,04A4H MOV AX,20H OUT DX,AX MOV AX,0 OUT DX,AX JMP $CODE ENDSEND START实验现象:将GA

23、TE2接到逻辑电平开关上,GATE2高电平时,LED亮灭有序,GATE2低电平时,LED不会有现象。4. 将GATE2 接到PUL P+开关上,计数器2 改为方式1 ;观察其现象。实验程序:CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,04A6H MOV AX,36H OUT DX,AX MOV DX,04A0H MOV AX,7CH OUT DX,AX MOV AX,92H OUT DX,AX MOV DX,04A6H MOV AX,0B2H OUT DX,AX MOV DX,04A4H MOV AX,4 OUT DX,AX

24、MOV AX,0 OUT DX,AX JMP $CODE ENDSEND START实验现象:为了使实验更加准确,我们先测试了一下PUL P+在没有按下时的电平状态为高电平。在改为该题的要求后,测试结果是,在没有按下PUL P+时,LED灯没有任何现象。在按下PUL P+时,按下后,灯亮灭一次就不再有变化。说明是下降沿使能。5. 将GATE2 接到PUL P+开关上,计数器2 改为方式5 ;观察其现象。实验程序:CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,04A6H MOV AX,36H OUT DX,AX MOV DX,04

25、A0H MOV AX,7CH OUT DX,AX MOV AX,92H OUT DX,AX MOV DX,04A6H MOV AX,0BAH OUT DX,AX MOV DX,04A4H MOV AX,20H OUT DX,AX MOV AX,0 OUT DX,AX JMP $CODE ENDSEND START实验现象:在没有按下PUL P+时,LED灯没有任何现象。在按下PUL P+时,按下后松手的瞬间开始,灯亮灭一次就不再有变化。说明是上升沿使能。八、心得体会: 计数器方式等知识在理论课上并没有能够理解其用处,在调整计数器方式和分频器方式的过程中慢慢得到了了解。实验四 8250串行接口实

26、验一、实验目的在实验箱与PC机(上位机)之间实现串行通信,主机每下传一个字符,若通讯正确,则下位机返回一个同样的字符;若不正确,则无返回值或者返回值不同。二、实验容1熟悉串行通信的一般原理和8250的工作原理。2了解RS232串行接口标准及连接方法。3掌握8250芯片的编程方法。三、实验设备微机实验教学系统实验箱、8086CPU模块四、连线五、实验步骤 (1)无须连线,部已经连好。8250的端口地址为0480H起始的偶地址单元。 (2)编写下位机程序,编译后,全速运行。 (3)退出“8086实验系统”,运行“串口调试助手”上位机程序。 (4)将“串口调试助手”程序输入和输出都调整为16进制格式

27、,发送一个16进制数, 观察返回的是否是同样一个16进制数。六、实验源程序CODE SEGMENT PUBLICASSUME CS:CODE ORG 100HSTART: MOV DX,486H MOV AX,80H OUT DX,AXMOV DX,480H MOV AX,12 OUT DX,AXMOV DX,482H MOV AX,0OUT DX,AXMOV DX,486H MOV AX,3 OUT DX,AXMOV DX,482H MOV AX,0 OUT DX,AXMOV DX,48AH IN AX,DX MOV DX,480H IN AX,DXLOOP1:CALL RECV CALL

28、SEND JMP LOOP1SEND:PUSH AX MOV DX,48AH IN AX,DX TEST AX,20H JNZ SEND2 POP AX JMP SENDSEND2:POP AX MOV DX,480H OUT DX,AX RETRECV:MOV DX,48AH IN AX,DX TEST AX,1 JZ RECV MOV DX,480H IN AX,DX RETCODE ENDSEND START七、思考题1.连接8255,将接收到的16进制数;驱动8个彩灯;观察其现象。硬件将CS0与CS8255片选端相连,将PB0PB7与LED1LED8依次相连。程序如下:CODE SEG

29、MENT PUBLICASSUME CS:CODE ORG 100HSTART:MOV DX,486HMOV AX,80HOUT DX,AXMOV DX,480HMOV AX,12OUT DX,AXMOV DX,482HMOV AX,0OUT DX,AXMOV DX,486HMOV AX,3OUT DX,AXMOV DX,482HMOV AX,0OUT DX,AXMOV DX,48AHIN AX,DXMOV DX,480HIN AX,DXMOV DX,04A6H ;设置8255的控制字MOV AX,80HOUT DX,AXLOOP1: CALL RECV CALL SEND MOV DX,04A2H ;设置A口为输出口 OU

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1