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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

安徽工业大学微机原理与接口技术实验报告下.docx

1、安徽工业大学微机原理与接口技术实验报告下微机原理与接口技术实验报告下指导教师:陆勤姓名:程少锋学号:139074366班级:物联网131班实验三 8253、8255、8259综合实验18253计数器实验要求:计数器1方式0计数,计满3个数产生中断,中断5次后结束。实验线路见图6-6:图6-6 8253计数器实验电路图实验程序:INTPORT1 EQU 0FF80H ;8259A的偶地址入口INTPORT2 EQU 0FF81H ;8259A的偶地址入口INTQ3 EQU INTREEUP3 ;INTREEUP3地址TCONTR0 EQU 0043H ;8253端口地址TCON1 EQU 004

2、1H ;8253端口地址PA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口code segment assume cs:code ORG 12D0H ;源地址START: JMP START0 ; 跳转到START0BUF DB ?,?,?,?,?,? ;六字节缓冲区intcnt db ? ;一字节的缓冲区data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h db 0a1h,86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0b

3、fh,8FH;七段码定义START0: CLD;置方向位 CALL BUF1 ;调用子程序BUF1 CALL WRINTVER ;WRITE INTRRUPT MOV AL,13H ;写ICW1,边沿触发,单片,需要ICW4 MOV DX,INTPORT1 OUT DX,AL MOV AL,08H;ICW2,中断类型号高5位 MOV DX,INTPORT2 OUT DX,ALMOV AL,09H;写ICW4,BUF位在缓冲方式下工作,8086/8088系统 OUT DX,AL MOV AL,0F7H OUT DX,AL MOV intcnt,01H ;TIME=1 MOV DX,TCONTR0

4、;指向控制口 MOV AL,51H ;8253控制字,通道1,方式0,只读/写低字节,BCD码计数 OUT DX,AL;送控制字 MOV DX,TCON1;指向控制口 MOV AL,03;计数值低字节 OUT DX,AL;送控制字 MOV DX,0FF23H;指向8255A控制口 MOV AL,80;A口方式0,输出,C口上半部输出,B口方式,输出,C口下半部输出 OUT DX,AL;送控制字 STI; 开中断WATING: CALL DISP ;DISP 825359 JMP WATINGWRINTVER: MOV AX,0H MOV ES,AX MOV DI,002CH;目的地址 LEA

5、AX,INTQ3;INTQ3的偏移地址 STOSW;存字 MOV AX,0000h;清零 STOSW RET;中断返回INTREEUP3: push ax;入栈 push bx push cx push dx MOV DX,TCON1;指向控制口 MOV AL,03;计数值低字节 OUT DX,AL MOV AL,INTCNT CALL CONVERS MOV BX,OFFSET BUF MOV AL,10H MOV CX,05H;置循环数INTRE0: MOV BX,AL;将Al中的值存在BX中 INC BX;BX加1 LOOP INTRE0;循环 ADD INTCNT,01H;循环数是五次

6、 CMP INTCNT,06H JNA INTRE2 CALL BUF2 ;DISP:goodINTRE1: CALL DISP JMP INTRE1CONVERS: AND AL,0FH;显示次数 MOV BX,offset buf MOV BX+5,AL RETINTRE2: MOV AL,20H MOV DX,INTPORT1 OUT DX,AL pop dx pop cx pop bx pop ax IRET;软中断返回DISP: MOV AL,0FFH ;00H MOV DX,PA;清零 OUT DX,AL MOV CL,0DFH ;20H MOV BX,OFFSET BUFDIS1

7、: MOV DX,PC OUT DX,AL MOV AL,BX MOV AH,00H PUSH BX MOV BX,OFFSET DATA1 ADD BX,AX MOV AL,BX POP BX MOV DX,PB OUT DX,AL MOV AL,CL MOV DX,PA OUT DX,AL PUSH CXDIS2: MOV CX,00A0H LOOP $ POP CX CMP CL,0FEH ;01H JZ LX1 INC BX ROR CL,1 ;SHR CL,1 JMP DIS1LX1: MOV AL,0FFH MOV DX,PB OUT DX,AL RETBUF1: MOV BUF,

8、08H MOV BUF+1,02H MOV BUF+2,05H MOV BUF+3,03H MOV BUF+4,05H MOV BUF+5,09H RETBUF2: MOV BUF,09H MOV BUF+1,00H MOV BUF+2,00H MOV BUF+3,0dH MOV BUF+4,10H MOV BUF+5,10H RETCODE ENDSEND START思考:如果计数器0方式0计数,计满5个数产生中断,中断3次后结束。硬件软件如何修改?硬件修改:将连接在CLK1,GATE1,OUT1的连线改接到CLK0,GATE0,OUT0上。程序修改:将程序对应部分做如下修改1、TCON1

9、EQU 0041H改为TCON1 EQU 0040H 2、将8253控制字由MOV AL,51H改为 MOV AL,11H 3、计数值低字节将 MOV AL,02改为MOV AL,04 4、将CMP INTCNT,06H改为CMP INTCNT,04H;2、8253定时器实验要求:用8253定时器1通道定时,每隔1秒使PA口的指示灯的状态右移一位。主程序反复游走显示8253A。8253定时器实验线路见图6-7:图6-7 8253计数器实验电路图实验程序:CODE SEGMENT ;ASSUME CS:CODEINTPORT1 EQU 0FF80H;8259A的偶地址入口INTPORT2 EQU

10、 0FF81H;8259A的奇地址入口INTQ3 EQU INTREEUP3TCONTR0 EQU 0043H;8253端口地址TCON1 EQU 0041H;8253端口地址IOCONPT EQU 0FF2BH;8255A的端口地址IOBPT EQU 0FF29H;8255A的端口地址IOAPT EQU 0FF28H;8255A的端口地址PA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口 ORG 12D0H;源地址START: JMP START0BUF DB ?,?,?,?,?,?;6字节缓冲区intcnt db ? ;1字节缓冲区

11、WEIKONG DB ? ;1字节缓冲区data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h db 0a1h,86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FHSTART0: CLD;置方向位 CALL BUF1 CALL WRINTVER ;WRITE INTRRUPT MOV AL,13H;写ICW1,边沿触发,单片,需要ICW4 MOV DX,INTPORT1 OUT DX,AL MOV AL,08H;ICW2,中断类型号高5位MOV DX,INTPORT2 OU

12、T DX,AL MOV AL,09H;写ICW4,BUF位在缓冲方式下工作,8086/8088系统 OUT DX,AL MOV AL,0F7H OUT DX,AL MOV intcnt,50 ;软件计数50(1秒=20ms*50) MOV DX,TCONTR0 MOV AL,74H;通道1,先读/写低字节,再读/写高字节,方式2,二进制数 OUT DX,AL MOV DX,TCON1 ;计数器1定时20ms MOV AX,40000 OUT DX,AL MOV AL,AH;读入计数值的高字节 OUT DX,AL MOV DX,0FF2BH MOV AL,82H;A口方式0,输出,C口上半部输出

13、,B口方式,输入,C口下半部输出 OUT DX,AL MOV WEIKONG, 0FEH ;初始PA0对应位亮 MOV AL, WEIKONG MOV DX, 0FF29H OUT DX,AL STI ;开中断WATING: CALL DISP ;DISP 8253-A JMP WATINGWRINTVER: MOV AX,0H MOV ES,AX MOV DI,002CH;目的地址 LEA AX,INTQ3;INTQ3的偏移地址 STOSW MOV AX,0000h STOSW RETINTREEUP3: DEC INTCNT;INTCNT减1 JNZ INTRE2 MOV INTCNT,

14、50 ROL WEIKONG, 1 MOV DX, IOAPT MOV AL, WEIKONG OUT DX,ALINTRE2: MOV AL,20H MOV DX,INTPORT1 OUT DX,AL IRET;软中断返回DISP: MOV AL,0FFH ;00H MOV DX,PA OUT DX,AL MOV CL,0DFH ;20H MOV BX,OFFSET BUFDIS1: MOV DX,PC OUT DX,AL MOV AL,BX MOV AH,00H PUSH BX MOV BX,OFFSET DATA1 ADD BX,AX MOV AL,BX POP BX MOV DX,PB

15、 OUT DX,AL MOV AL,CL MOV DX,PA OUT DX,AL PUSH CXDIS2: MOV CX,0000H LOOP $ POP CX CMP CL,0FEH ;01H JZ LX1;相等转LX1 INC BX ROR CL,1 ;循环 右移一位,指示灯又移变亮 JMP DIS1LX1: MOV AL,0FFH;指示灯全灭 MOV DX,PB OUT DX,AL RETBUF1: MOV BUF,08H MOV BUF+1,02H MOV BUF+2,05H MOV BUF+3,03H MOV BUF+4,17H MOV BUF+5,0AH RETCODE ENDS

16、END START思考:硬件修改:将连接在CLK1,GATE1,OUT1的连线改接到CLK0,GATE0,OUT0上。 接在PB口的线与接在PA口的线互换。软件修改:按照下面对相应部分修改1、TCON1 EQU 0041H改为TCON1 EQU 0040H2、将MOV AL,74H改为MOV AL,34H;3、将MOV AL,82H改为MOV AL,90H4、将MOV WEIKONG, 0FEH 改为MOV WEIKONG, 07FH5、将MOV INTCNT, 50改为MOV INTCNT, 1006、将MOV AL, WEIKONG改为MOV AL, WEIKONG 7、将ROL WEIK

17、ONG, 1改为ROR WEIKONG, 18、将ROR CL,1 改为ROL CL,19、将MOV BUF+5,0AH改为MOV BUF+5,0BH五、本次实验总结实验过程中把学过的计算机编译原理以及操作系统的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。实验五 A/D转换实验一、实验目的 了解模/数转换基本原理,掌握ADC0809的使用方法; 掌握定时数据采集程序的编制方法。二、实验内容 1、A/D转换实验利用实验系统上电位器提供的可调电压作为0809模拟信号的输入,编制程序,将模拟量转换为数字量,通过数码管显示出来。(1)实验接线图 ADC0809接线

18、见图6-9图6-9 ADC0809接线图(2)编程指南 ADC0809的START端为A/D转换启动信号,ALE端为通道选择地址的锁存信号,实验电路中将其相连,以便同时锁存通道地址并开始A/D采样转换,其输入控制信号为CS和WR,故启动A/D转换只须如下两条指令:MOV DX,ADPORT ;ADC0809端口地址 OUT DX,AL ; 发CS和WR信号并送通道地址用延时方式等待A/D转换结果,使用下述指令读取A/D转换结果。 MOV DX,ADPORT ;ADC0809端口地址 INAL,DX 循环不断采样A/D转换的结果,边采样边显示A/D转换后的数字量。(3)实验程序框图 A/D转换流

19、程见图6-10图6-10 A/D转换流程(4)实验步骤 将0809 CS4插孔连到译码输出FF80H插孔。 将通道0模拟量输入端IN0连电位器W1的中心插头AOUT1(05V)插孔,8MHZT。 运行实验程序,系统上显示“0809 XX”。“XX”表示输入模拟量转换后的数字量。 调节电位器Wl, 显示器上会不断显示新的转换结果。模拟量和数字量对应关系的典型值为:0V00H +2.5V80H +5VFFH 按RST键退出。(5)实验程序清单CODE SEGMENT ;ASSUME CS:CODEADPORT EQU 0FF80h ;8259A偶地址入口PA EQU 0FF20H ;字位口PB E

20、QU 0FF21H ;字形口PC EQU 0FF22H ;键入口 ORG 1000H ;源地址START: JMP START0 ;跳转到START0BUF DB ?,?,?,?,?,? ;定义6字节缓冲区data1:db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h ;定义七段码 db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FHSTART0: CALL BUF1 ;调用BUF1子程序ADCON: MOV AX,00 MOV DX,ADPORT ;ADC0809端

21、口地址 OUT DX,AL ; 发CS和WR信号并送通道地址MOV CX,0500H ;置循环数;DELAY: LOOP DELAY ;空循环,延时 MOV DX,ADPORT ;ADC0809端口地址 IN AL,DX CALL CONVERS;调用子程序CONVERS CALL DISP ;调用显示子程序DISP JMP ADCON ;跳转到ADCONCONVERS: MOV AH,AL;将 ax中的低字节赋给高字节 AND AL,0FH ;保留al中的低四位 MOV BX,OFFSET BUF;buf的偏移地址 MOV BX+5,AL;将al中的值给Bx+5 MOV AL,AH ;取al

22、中的高四位 AND AL,0F0H MOV CL,04H ;值移位数 SHR AL,CL;右移四位 MOV BX+4,Al ;将Al中的值给BX+4 RET;返回DISP: MOV AL,0FFH ;PA端口全置1,使其灯无显示 MOV DX,PA OUT DX,AL MOV CL,0DFH ;将0DFH给CL MOV BX,OFFSET BUF;取BUF的偏移地址 给BXDIS1: MOV AL,BX;将BX中的内容取出给Al MOV AH,00H PUSH BX;BX入栈 MOV BX,OFFSET DATA1;取DATA1的偏移地址给BX ADD BX,AX;BX与Ax相加 MOV AL

23、,BPBX;将BX的内容取到AL中 POP BX;BX出栈 MOV DX,PB;Al中得内容在PB端口输出 OUT DX,AL MOV AL,CL;显示 MOV DX,PA OUT DX,AL PUSH CX;CX入栈DIS2: MOV CX,00A0H;循环00A0H次,延时 LOOP $ POP CX;CX出栈 CMP CL,0FEH;Cl 与0FEH比较 JZ LX1 ;Cl与00A0H相等,则程序跳转到LX INC BX;BX自加 ROR CL,1;Cl循环左移1位 JMP DIS1;循环显示LX1: MOV AL,0FFH;PB端口清零 MOV DX,PB OUT DX,AL RET

24、;中断返回BUF1: MOV BUF,00H MOV BUF+1,08H MOV BUF+2,00H MOV BUF+3,09H MOV BUF+4,00H MOV BUF+5,00H RETCODE ENDSEND START2、数据采集实验 要求:用8253定时器1通道定时,每隔半秒使从ADC0809的0通道IN0采集一个数据,若模拟电压在0-2V范围内(0-102),则使LED显示器L7-L4亮;若模拟电压大于2V,小于3V,则使L5-L2亮;若模拟电压大于等于3V,则使LED显示器L3-L0亮。(主程序重复所采集的数据)(1)实验接线图数据采集实验系统接线图见图6-11图6-11 数据

25、采集系统接线图(2)程序流程图主程序流程见图6-12图6-12 主程序流程图中断服务程序流程见图6-13图6-13 中断服务程序流程(3)实验程序清单CODE SEGMENT ;ASSUME CS:CODEINTPORT1 EQU 0FF80H ;8259A偶地址入口INTPORT2 EQU 0FF81H ;8259A奇地址入口INTQ3 EQU INTREEUP3 ;中断源IR3地址TCONTR0 EQU 0043H;8253端口地址TCON1 EQU 0041H;8253端口地址IOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28HPA EQU

26、 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口ADPORT EQU 0FE00H ;ADC0809端口地址ORG 12D0H;源地址 START: JMP START0;跳转到START0BUF DB ?,?,?,?,?,?;定义6字节的缓冲区intcnt db ?RES DB ?data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h db 0a1h,86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH;定义七段码START

27、0: CLD;置方向位 CALL BUF1;调用BUF1 CALL WRINTVER ;调用 WRINTVER MOV AL,13H;初始化ICW1,单片,边沿触发,设置ICW4 MOV DX,INTPORT1 OUT DX,AL MOV AL,08H;写ICW2,允许IR3中断 MOV DX,INTPORT2 OUT DX,AL MOV AL,09H;写ICW4,8259A在缓冲方式下工作,8086/8088系统 OUT DX,AL MOV AL,0F7H;写OCW1,允许中断源IR3,其余均被屏蔽 OUT DX,AL MOV intcnt,25 MOV DX,TCONTR0 MOV AL,

28、74H;8253工作通道1,先读(写)低字节,再读(写)高字节,方式4,二进制计数 OUT DX,AL MOV DX,TCON1 MOV AX,40000;8253初始值40000 OUT DX,AL MOV AL,AH;写初值的高字节 OUT DX,ALMOV DX,0FF2BH;8255初始化,PA口方式0,输出 MOV AL,82H OUT DX,AL STI;开中断WATING: CALL DISP;调用显示程序 JMP WATING;循环,延时WRINTVER: MOV AX,0H MOV ES,AX;ES指向AX MOV DI,002CH;置DI初值为CH LEA AX,INTQ3;取INTQ3的初值 STOSW MOV AX,0000h STOSW

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

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