微机原理与接口实验报告.docx

上传人:b****4 文档编号:2978731 上传时间:2022-11-16 格式:DOCX 页数:41 大小:226.97KB
下载 相关 举报
微机原理与接口实验报告.docx_第1页
第1页 / 共41页
微机原理与接口实验报告.docx_第2页
第2页 / 共41页
微机原理与接口实验报告.docx_第3页
第3页 / 共41页
微机原理与接口实验报告.docx_第4页
第4页 / 共41页
微机原理与接口实验报告.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

微机原理与接口实验报告.docx

《微机原理与接口实验报告.docx》由会员分享,可在线阅读,更多相关《微机原理与接口实验报告.docx(41页珍藏版)》请在冰豆网上搜索。

微机原理与接口实验报告.docx

微机原理与接口实验报告

 

实验报告

 

专业班级:

学号:

姓名:

指导老师:

陆勤

 

实验一8255A应用—数码管动态显示

一、实验目的

1、掌握8255A的工作方式、编程原理和微机接口方法。

2、了解LED数码管动态显示的工作原理及编程方法。

二、实验内容

编制程序,使数码管显示“DICE88”字样。

三、实验程序框图

图6-1实验程序流程图

四、实验步骤 

联机模式:

 

(1)在PC机和实验系统联机状态下,运行实验系统dj8086k.exe(双击桌面OTA图标或通过开始-程序-dj8086k-DJ8086k微机原理与接口技术),新建文件并在编辑窗口输入汇编源程序,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。

 

(2)数码管显示“DICE88”字样。

脱机模式:

(1)在P.态下,通过单板机小键盘,从2DF0地址开始输入机器码(参见附录三),完成后返回监控,输入起始地址2DF0,再按EX键执行。

(2)数码管显示“DICE88”字样。

五、实验程序清单

CODESEGMENT;display"DICE88"

ASSUMECS:

CODE

ORG2DF0H

START:

JMPSTART0

PAEQU0FF20H;字位口

PBEQU0FF21H;字形口

PCEQU0FF22H;键入口

BUFDB?

?

?

?

?

?

data1:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h

db86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH,0F0H,89h,0c1h,87h

;修改89h、0c1h、87h各自对应:

H、U、t

START0:

CALLBUF1

CON1:

CALLDISP

JMPCON1

DISP:

MOVAL,0FFH;00H

MOVDX,PA

OUTDX,AL

MOVCL,0DFH;显示子程序,5ms

MOVBX,OFFSETBUF

DIS1:

MOVAL,[BX]

MOVAH,00H

PUSHBX

MOVBX,OFFSETDATA1

ADDBX,AX

MOVAL,[BX]

POPBX

MOVDX,PB

OUTDX,AL

MOVAL,CL

MOVDX,PA

OUTDX,AL

PUSHCX

DIS2:

MOVCX,00A0H

LOOP$

POPCX

CMPCL,0FEH;01H

JZLX1

MOVAL,0FFH;00H

MOVDX,PA

OUTDX,AL

INCBX

RORCL,1;SHRCL,1

JMPDIS1

LX1:

MOVAL,0FFH

MOVDX,PB

OUTDX,AL

RET

BUF1:

MOVBUF,0DH;实验修改movBUF,0Ah

MOVBUF+1,01H;实验修改movBUF+1,16h

MOVBUF+2,0CH;实验修改movBUF+2,17h

MOVBUF+3,0EH;实验修改movBUF+3,18h

MOVBUF+4,08H;实验修改movBUF+4,00h

MOVBUF+5,08H;实验修改movBUF+5,09h

RET

CODEENDS

ENDSTART

六、思考题:

修改程序使之可以显示其他字符,如“AHUt09”。

见上面程序修改部分

七、实验遇到的难点:

刚开始对发光二极管的控制不到位,总是与想要显示的不相符,后来理解了编码方式后,能够对二极管有一个很好的控制,之后我还自己编写并显示了“ILOVEU”,觉得挺有趣的

 

实验二8259单级中断控制器实验

一、实验目的

1.掌握8259中断控制器的接口方法。

2.掌握8259中断控制器的应用编程。

二、实验内容

利用8259实现对外部中断的响应和处理,要求程序对每次中断进行计数,并将计数结果送数码显示。

三、实验接线图

图6-2实验二接线图

四、编程指南

⑴ 8259芯片介绍

中断控制器8259A是专为控制优先级中断而设计的芯片。

它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中。

因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优先模式和中断请求方式。

即中断结构可以由用户编程来设定。

同时,在不需要增加其它电路的情况下,通过多片8259A的级联,能构成多达64级的矢量中断系统。

⑵ 本实验中使用3号中断源IR3,“

”插孔和IR3相连,中断方式为边沿触发方式,每拨1次AN开关产生一次中断,满5次中断,显示“good”。

如果中断源电平信号不符合规定要求,则自动转到7号中断,显示“Err”。

五、实验程序框图

图6-3主程序流程图6-4IR3中断服务程序流程

IR3中断服务程序:

IR7中断服务程序:

图6-5IR7中断服务流程

六、实验步骤

1、按图6-2连好实验线路图。

⑴8259的INT连8088的INTR;⑵8259的INTA连8088的INTA;⑶“

”插孔和8259的3号中断IR3插孔相连,“

”端初始为低电平;⑷8259的CS端接FF80H孔。

2、输入并运行实验程序,系统显示8259-1。

3、按动AN开关按钮,按满5次显示good。

七、实验程序清单

CODESEGMENT;

ASSUMECS:

CODE

INTPORT1EQU0FF80H

INTPORT2EQU0FF81H

INTQ3EQUINTREEUP3

INTQ7EQUINTREEUP7

PAEQU0FF20H;字位口

PBEQU0FF21H;字形口

PCEQU0FF22H;键入口

ORG12D0H

START:

JMPSTART0

BUFDB?

?

?

?

?

?

intcntdb?

data1:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h

db86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH

START0:

CLD

CALLBUF1

CALLWRINTVER;WRITEINTRRUPT

MOVAL,13H

MOVDX,INTPORT1

OUTDX,AL

MOVAL,08H

MOVDX,INTPORT2

OUTDX,AL

MOVAL,09H

OUTDX,AL

MOVAL,0F7H

OUTDX,AL

MOVintcnt,01H;TIME=1

STI

WATING:

CALLDISP;DISP8259-1

JMPWATING

WRINTVER:

MOVAX,0H

MOVES,AX

MOVDI,002CH

LEAAX,INTQ3

STOSW

MOVAX,0000h

STOSW

MOVDI,003CH

LEAAX,INTQ7

STOSW

MOVAX,0000h

STOSW

RET

INTREEUP3:

CLI

pushax

pushbx

pushcx

pushdx

MOVAL,INTCNT

CALLCONVERS

MOVBX,OFFSETBUF;077BH

MOVAL,10H

MOVCX,05H

INTRE0:

MOV[BX],AL

INCBX

LOOPINTRE0

MOVAL,20H

MOVDX,INTPORT1

OUTDX,AL

ADDINTCNT,01H

CMPINTCNT,06H

JNAINTRE2

CALLBUF2;DISP:

good

INTRE1:

CALLDISP

JMPINTRE1

CONVERS:

ANDAL,0FH

MOVBX,offsetbuf;077AH

MOV[BX+5],AL

RET

INTRE2:

MOVAL,20H

MOVDX,INTPORT1

OUTDX,AL

popdx

popcx

popbx

popax

STI

IRET

INTREEUP7:

CLI

MOVAL,20H

MOVDX,INTPORT1

OUTDX,AL

callbuf3;disp:

err

INTRE3:

CALLDISP

JMPINTRE3

DISP:

MOVAL,0FFH;00H

MOVDX,PA

OUTDX,AL

MOVCL,0DFH;20H;显示子程序,5ms

MOVBX,OFFSETBUF

DIS1:

MOVAL,[BX]

MOVAH,00H

PUSHBX

MOVBX,OFFSETDATA1

ADDBX,AX

MOVAL,[BX]

POPBX

MOVDX,PB

OUTDX,AL

MOVAL,CL

MOVDX,PA

OUTDX,AL

PUSHCX

DIS2:

MOVCX,00A0H

LOOP$

POPCX

CMPCL,0FEH;01H

JZLX1

INCBX

RORCL,1;SHRCL,1

JMPDIS1

LX1:

MOVAL,0FFH

MOVDX,PB

OUTDX,AL

RET

BUF1:

MOVBUF,08H

MOVBUF+1,02H

MOVBUF+2,05H

MOVBUF+3,09H

MOVBUF+4,17H

MOVBUF+5,01H

RET

BUF2:

MOVBUF,09H

MOVBUF+1,00H

MOVBUF+2,00H

MOVBUF+3,0dH

MOVBUF+4,10H

MOVBUF+5,10H

RET

BUF3:

MOVBUF,0eH

MOVBUF+1,18H

MOVBUF+2,18H

MOVBUF+3,10H

MOVBUF+4,10H

MOVBUF+5,10H

RET

CODEENDS

ENDSTART

八、思考题:

若用IR5产生中断,要求修改硬件和软件并调试,修改位置

硬件修改:

将连接到8259的IR3线连接到IR5

软件修改:

在IR5所对应的中断向量的字段中写入中断程序的入口地址,并修改8259A的OCW1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

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

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