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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

微机原理综合实验报告.docx

1、微机原理综合实验报告 微机原理综合实验报告一 8255并行口实验二 8259中断实验(一)三 8253定时/计数器实验四 A/D转换实验五 步进电机实验六 综合实验:十字路口交通灯实验七 实验体会 四8255并行口实验1.实验目的:(1)学习利用并行接口芯片8255构成并行接口电路的基本方法(2)熟悉掌握并行接口芯片8255的基本性能及在时间应用中的硬件连接、初始化编程方法2.实验内容:编写程序,使8255的PB口为输出口,PA口为输入口,从PA口将K0K7作为一个字节读入,在从PB口输出这一反码字节。3.实验程序:CODE SEGMENTASSUME CS:CODESTART: MOV DX

2、,21BH ;8255初始化命令字 MOV AL,90H OUT DX,ALBG: MOV DX,218H ;从PA口读入数据 IN AL,DX XOR AL,FFH ;求反 MOV DX,219H OUT DX,AL ;从PB口输出 JMP BGCODE ENDSEND START4.实验框图5. 实验电路图6.实验方法说明通过8255控制字设定PA口为输入口,PB口为数据输出口,读取PA口的数值并通过求反指令将数据取反后,经由PB口输出。8259中断实验(一)1.实验目的:(1)了解PC机的中断结构及8259中断控制器的初始化(2)熟悉8259中断控制器的工作原理和硬件连线方法(3)了解8

3、259的应用和硬件编程方法了解8259中断屏蔽2.实验内容:编写中断实验程序,主程序使8255的口为输出口,输出0FFH,L0L7指示灯全亮,中断服务程序从PB口输出0FFH,L0L3亮,L4L7灭,并延时一段时间后返回主程序。3.实验程序INT0 EQU 220hINT1 EQU 221hP8255BEQU219HP8255KEQU21BHSTACK SEGMENTSTA DB 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENT ASSUME CS:CODE,SS:STACKSTART: CLI MOV AX,TOP MOV SP,AX PUS

4、H DS MOV AX,0000H ;定义IRQ0中断 MOV DS,AX MOV AX,OFFSET IRQ0 ADD AX,0000H MOV SI,20H MOV SI,AX MOV AX,CS MOV SI,22H MOV SI,AX POP DS MOV AL,13H ;对8259进行初始化ICW1 MOV DX,INT0 OUT DX,AL MOV AL,8 ;对8259进行初始化ICW2 MOV DX,INT1 OUT DX,AL MOV CX,0FFFFH LOOP $ MOV AL,9 ;对8259进行初始化ICW4 MOV DX,INT1 OUT DX,AL MOV CX,

5、0FFFFH LOOP $ MOV DX,INT1 MOV AL,0FEH ;对8259进行初始化OCW1 OUT DX,AL MOV CX,0FFFFH LOOP $ MOV DX,INT0 ;对8259进行初始化OCW2,普通EOI返回 MOV AL,20H OUT DX,AL MOV CX,0FFFFH LOOP $ STI MOV DX,P8255K ;对8255进行初始化 MOV AL,90H OUT DX,ALDSP: MOV AL,0FFH MOV DX,P8255B OUT DX,AL JMP DSPIRQ0: STI MOV CX,0FFFFH LOOP $ MOV AL,0

6、FH MOV DX,P8255B OUT DX,AL MOV DX,INT0 MOV AL,20H OUT DX,AL MOV CX,0FFFFH LOOP $ MOV CX,0FFFFH LOOP $ IRET CODE ENDSEND START4.实验框图5. 实验电路图6. 实验方法说明主程序使8255输出高电平,实现L0L7指示灯全亮。设置中断IRQ0,实现L0L3亮,L4L7灭,并延时一段时间后返回主程序。将中断向量的入口地址写入后,通过对8259初始化命令字的写入,实现中断的调用。六8259中断实验(二)1. 实验目的(1)了解PC机的中断结构及8259中断控制器的初始化(2)熟

7、悉8259中断控制器的工作原理和硬件连线方法(3)了解8259的应用和硬件编程方法(4)了解8259中断屏蔽,以及优先级的判别等特性2.实验内容:编写中断实验程序,主程序使8255的PB口为输出口,输出0FFH,L0L7指示灯全亮,IR0中断服务程序从PB口输出0FH,L0L3灯亮,L4L7灯灭,并延时一段时间后返回主程序。IR1中断服务程序从PB口输出0F0H,L0L3灭,L4L7亮,并延时一段时间后返回主程序。3.实验程序INT0 EQU 220hINT1 EQU 221hP8255BEQU219HP8255KEQU21BHSTACK SEGMENTSTA DB 50 DUP(?)TOP

8、EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: CLI MOV AX,TOP MOV SP,AX PUSH DS MOV AX,0000H ;设置中断向量IRQ0 MOV DS,AX MOV AX,OFFSET IRQ0 ADD AX,0000H MOV SI,20H MOV SI,AX MOV AX,CS MOV SI,22H MOV SI,AX MOV AX,0000H ;设置中断向量IRQ1 MOV DS,AX MOV AX,OFFSET IRQ1 ADD AX,0000H MOV SI,24H MOV

9、SI,AX MOV AX,CS MOV SI,26H MOV SI,AX POP DS MOV AL,13H ;对8259进行初始化ICW1 MOV DX,INT0 OUT DX,AL MOV AL,8 ;对8259进行初始化ICW2 MOV DX,INT1 OUT DX,AL mov cx,0fffh loop $ MOV AL,9 ;对8259进行初始化ICW4 MOV DX,INT1 OUT DX,AL mov cx,0fffh loop $ MOV DX,INT1 MOV AL,0FCH ;对8259进行初始化OCW1 OUT DX,AL mov cx,0fffh loop $ MOV

10、 DX,INT0 MOV AL,20H ; 普通EOI返回 OUT DX,AL mov cx,0fffh loop $ STI MOV DX,P8255K;对8255进行初始化 MOV AL,90H OUT DX,ALDSP: MOV AL,0FFH MOV DX,P8255B OUT DX,AL JMP DSP IRQ0: STI MOV CX,0FFFFH LOOP $ MOV AL,0FH MOV DX,P8255B OUT DX,AL MOV DX,INT0 MOV AL,20H OUT DX,AL mov cx,0FFFFH LOOP $ mov cx,0FFFFH LOOP $ I

11、RET IRQ1: STI mov cx,0FFFFH LOOP $ MOV AL,0F0H MOV DXP8255B OUT DX,AL MOV DX,INT0 MOV AL,20H OUT DX,AL mov cx,0FFFFH LOOP $ mov cx,0FFFFH LOOP $ IRET code endsend start4.实验框图5. 实验电路图6. 实验方法说明主程序使8255输出高电平,实现L0L7指示灯全亮。设置中断IRQ0,实现L0L3亮,L4L7灭,并延时一段时间后返回主程序。设置中断IRQ1,实现L0L3灭,L4L7亮,并延时一段时间后返回主程序。将中断向量的入口地

12、址写入后,通过对8259初始化命令字的写入,使8259工作在全嵌套方式下,中断优先级IRQ0大于IRQ1,这样通过8259对中断的判断来实现中断的响应。七8253定时/计数器实验1.实验目的:(1)了解定时器8253的初始化及用法(2)会用逻辑笔或示波器观察8253的工作状态2实验内容:编写程序,使8253工作的定时/计时器2工作在方式3下3.实验程序:TIM_CTL EQU 203HTIMER0 EQU 200HTIMER1 EQU 201HTIMER2 EQU 202HMODE23 EQU 0B6HMODE13 EQU 76HCODE SEGMENTASSUME CS:CODESTART:

13、 TT: CLI MOV DX,TIM_CTL ;初始化8253MOV AL,MODE23OUT DX,ALMOV DX,TIMER2 ;先写低8位MOV AL,0FFh OUT DX,AL MOV AL,0FFh ;后写低8位OUT DX,ALWT: JMP WTCODE ENDSEND START4.实验框图5.实验电路6.实验方法说明设置8253计时器工作在方式2实现分频器功能,将实验箱上的频率Q0经行65535分频,再由OUT口输出接到逻辑笔,观察逻辑笔的变化。八A/D转换实验1.实验目的:(1)了解模/数转换的工作原理(2)掌握0809的使用方法2.实验内容:编写程序,用0809的I

14、N0通道采集数据并在数码管上显示3.实验程序B8279 EQU 212HD8279 EQU 210HLED0 EQU 00 LED1 EQU 38H DATA SEGMENTLED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39HDB 5EH,79H,71HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV DX,B8279 ;对8279进行初始化MOV AL,0D0HOUT DX,AL MOV CX,0FFFFH LOOP $MOV DX,B8279 MOV AL,LED0OU

15、T DX,ALMOV AL,LED1OUT DX,AL MOV DX,B8279MOV AL,95H OUT DX,AL MOV DX,D8279 ;数码管显示 MOV AL,40H OUT DX,AL MOV DX,D8279 MOV AL,5eHOUT DX,AL MOV DX,D8279MOV AL,77HOUT DX,AL TT: MOV DX,230H ;选通IN0通道OUT DX,AL MOV CX,0FFFFHLOOP $ MOV DX,B8279MOV AL,83H OUT DX,AL MOV DX,230HIN AL,DX AND AL,0FH LEA BX,LEDXLATM

16、OV DX,D8279 OUT DX,ALMOV DX,B8279 MOV AL,84HOUT DX,ALMOV DX,230HIN AL,DXMOV CL,4H ROR AL,CLAND AL,0FHLEA BX,LEDXLATMOV DX,D8279 OUT DX,ALJMP TT CODE ENDSEND START 4.实验框图5.实验电路图6实验方法说明通过A/D转换接口芯片0809实现模拟量到数据量的转变,并通过键盘显示芯片8279将转换后的数据量显示出来。步进电机实验1.实验目的:(1)了解步进电机的工作原理,以及脉冲分配概念(2)掌握计算机控制步进电机的方法2.实验内容编写程序

17、,通过8255控制步进电机的旋转3.实验程序CODE SEGMENTASSUME CS:CODESTART: MOV DX,21BH ;8255初始化 MOV AL,90H OUT DX,AL BG: MOV DX,218H IN AL,DX CMP AL,01H JNZ C2 MOV BX,0FFFFH JMP WORKC2: CMP AL,02H JNZ C4 MOV BX,07FFFH JMP WORKC4: CMP AL,04H JNZ C8 MOV BX,0FFFH JMP WORKC8: CMP AL,08H JNZ CC MOV BX,07FFH JMP WORKCC: MOV

18、AL,00H MOV DX,219H OUT DX,AL JMP BGWORK: MOV AL,01H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,03H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,02H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,06H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,04H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,0C

19、H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,08H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ MOV AL,09H MOV DX,219H OUT DX,AL MOV CX,BX LOOP $ JMP BG CODE ENDSEND START4.实验框图5.实验电路图6.实验方法说明初始化8255使PA口为输入口,PB口为输出口,通过判别PA口的数据来使步进电机工作在不同的状态。步进电机的旋转由OUT指令控制,实现步进电机按照预定指令旋转。十综合实验:十字路口交通灯实验1.实验要求:(1)正常情况下,红灯

20、、绿灯510秒定时变化(2)分别设置南北行人中断按钮和东西行人中断按钮,当行人过马路是绿灯亮并延时5秒(3)设置紧急开关,当按下开关时所以路口的信号灯全为红色2.发挥部分:(1)红灯和绿灯转换之间设置黄灯,并且黄灯闪烁3次(2)紧急红灯按下时发出警报声3.实验电路图4.实验框图5.实验程序P8255A EQU 218H ;8255连接端口定义P8255B EQU 219HP8255C EQU 21AHP8255K EQU 21BHTIM_CTL EQU 203H ;8253连接端口定义TIMER0 EQU 200HTIMER1 EQU 201HINT0 EQU 220H ;8259连接端口定义

21、INT1 EQU 221HMDAC EQU 228H ;0832连接端口定义;STACK SEGMENT STACKSTA DB 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: CLI MOV AX,TOP MOV SP,AX PUSH DS MOV AX,0000H ;定义中断向量IRQ0 MOV DS,AX MOV AX,OFFSET IRQ0 ADD AX,0000H MOV SI,20H MOV SI,AX MOV AX,CS MOV SI,22H MOV SI,AX; MOV

22、 AX,0000H ;定义中断向量IRQ1 MOV DS,AX MOV AX,OFFSET IRQ1 ADD AX,0000H MOV SI,24H MOV SI,AX MOV AX,CS MOV SI,26H MOV SI,AX;. MOV AX,0000H ;定义中断向量IRQ2 MOV DS,AX MOV AX,OFFSET IRQ2 ADD AX,0000H MOV SI,28H MOV SI,AX MOV AX,CS MOV SI,2AH MOV SI,AX POP DS;. MOV DX,TIM_CTL ;计数器0工作在方式1构成单稳态触发器 MOV AL,00100010B OU

23、T DX,AL MOV DX,TIMER0 MOV AL,0F0H ;只写低8位 OUT DX,AL MOV DX,TIM_CTL MOV AL,01110110B ;计数器1工作在方式3构成方波发生器 OUT DX,AL MOV DX,TIMER1 MOV AL,0FFH ;写低8位 OUT DX,AL MOV AL,0FFH ;写高8位 OUT DX,AL;. MOV AL,13H ;初始化ICW1,沿触发且需要ICW4 MOV DX,INT0 OUT DX,AL MOV CX,0FFFH LOOP $ MOV AL,8 ;初始化ICW2,自定义8号中断 MOV DX,INT1 OUT D

24、X,AL MOV CX,0FFFH LOOP $ MOV AL,9 ;初始化ICW3,自定义9号中断 MOV DX,INT1 OUT DX,AL MOV CX,0FFFH LOOP $ MOV AL,10 ;初始化ICW2,自定义10号中断 MOV DX,INT1 OUT DX,AL MOV CX,0FFFH LOOP $ MOV DX,INT1 ;设置命令字OCW1,只响应IR0、IR1、IR2引脚中断请求 MOV AL,0F8H OUT DX,AL MOV CX,0FFFH LOOP $ MOV DX,INT0 ;设置命令字OCW2,普通EOI命令 MOV AL,20H OUT DX,AL

25、 MOV CX,0FFFH LOOP $ STI; MOV DX,P8255K ;8255初始化, B口输出接LS240 MOV AL,10000001B OUT DX,AL;STATE1: MOV DX,P8255B ;东西红,南北绿 MOV AL,01011010B OUT DX,AL MOV CX,10 ;计时10秒S1: CALL DELAY LOOP S1STATE2: MOV DX,P8255B ;东西绿,南北黄 MOV AL,00000101B OUT DX,AL CALL SHANSHUO STATE3: MOV DX,P8255B ;东西绿,南北红 MOV AL,101001

26、01B OUT DX,AL MOV CX,10 ;计时10秒S3: CALL DELAY LOOP S3STATE4: MOV DX,P8255B ;东西黄,南北绿 MOV AL,00001010B OUT DX,AL MOV CX,3 CALL SHANSHUO JMP STATE1 ;循环到状态STATE1,即东西红,南北绿;*-*DELAY PROC ;延时子程序1,交通灯持续时间 PUSH CX PUSH DX MOV DX,20DL500: MOV CX,2801DL10ms: LOOP DL10ms DEC DX JNZ DL500 POP DX POP CX RETDELAY E

27、NDP;*-*HALF_DELAY PROC ;延时子程序2,黄灯闪烁时间 PUSH AX PUSH CX MOV AX,2DELAY1: MOV CX,50000DELAY2: LOOP DELAY2 DEC AX JNZ DELAY1 POP CX POP AX RETHALF_DELAY ENDP ;*-*SHANSHUO PROC ;黄灯闪烁子程序 PUSH AX PUSH DX PUSH CX MOV CX,6ZAIYICI: MOV DX,P8255B IN AL,DX CMP AL,00000101B JZ FLITTER1 CMP AL,10101111B JZ FLITTER1 CMP AL,00001010B JZ FLITTER2 CMP AL,01011111B JZ FLITTER2FLITTER1: CMP AL,00000101B JZ MIE1 MOV AL,00000101B OUT DX,AL CALL

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

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