微机原理与接口实验.docx
- 文档编号:6214230
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:38
- 大小:226.55KB
微机原理与接口实验.docx
《微机原理与接口实验.docx》由会员分享,可在线阅读,更多相关《微机原理与接口实验.docx(38页珍藏版)》请在冰豆网上搜索。
微机原理与接口实验
微机原理与接口技术实验报告
班级:
学号:
姓名:
指导老师:
纪平
实验一存贮器读写实验
一、实验目的
l、熟悉静态RAM的使用方法,掌握8088微机系统扩展RAM的方法。
2、掌握静态RAM读写数据编程方法。
二、实验内容
对指定地址区间的RAM(4000H~4FFH)先进行写数据55AAH,然后将其内容读出再写到5000H~5FFH中。
三、实验接线图(系统中已连接好)
四、实验步骤
l、将实验系统与PC机连接;
2、在PC机上启功DJ-8086k软件,实验系统进入联机状态;
3、在DJ-8086k软件环境下编辑、调试程序,将程序调试、编译通过;
4、运行程序。
5、稍后按RST键退出,用存贮器读方法检查4000H~43FFH中的内容和5000~53FFH中的内容应都是55AA。
五、实验总结:
把设备连好,然后把代码敲进里面运行,查看那几个内存单元的数据,本次实验对软件有了初步的了解,熟悉了编辑、调试程序,连续运行等内容。
6、实验代码
CODESEGMENT;RAM.ASM
ASSUMECS:
CODE
PAEQU0FF20H;字位口
PBEQU0FF21H;字形口
PCEQU0FF22H;键入口
ORG1850h
START:
JMPSTART0
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
START0:
MOVAX,0H
MOVDS,AX
MOVBX,4000H
MOVAX,55AAH
MOVCX,0200H
RAMW1:
MOVDS:
[BX],AX
ADDBX,0002H
LOOPRAMW1
MOVAX,4000H
MOVSI,AX
MOVAX,5000H
MOVDI,AX
MOVCX,0400H
CLD
REPMOVSB
callbuf1
movcx,0ffh
con1:
pushcx
calldisp
popcx
loopcon1
callbuf2
con2:
calldisp
jmpcon2
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,06H
MOVBUF+1,02H
MOVBUF+2,02H
MOVBUF+3,05H
MOVBUF+4,06H
MOVBUF+5,17H
RET
BUF2:
MOVBUF,17H
MOVBUF+1,17H
MOVBUF+2,09H
MOVBUF+3,00H
MOVBUF+4,00H
MOVBUF+5,0dH
RET
CODEENDS
ENDSTART
实验二8259单级中断控制器实验
一、实验目的
⒈ 掌握8259中断控制器的接口方法。
⒉ 掌握8259中断控制器的应用编程。
二、实验内容
利用8259实现对外部中断的响应和处理,要求程序对每次中断进行计数,并将计数结果送数码显示。
三、实验接线图
图6-1实验二接线图
4、编程指南
⑴ 8259芯片介绍
中断控制器8259A是专为控制优先级中断而设计的芯片。
它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中。
因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优先模式和中断请求方式。
即中断结构可以由用户编程来设定。
同时,在不需要增加其它电路的情况下,通过多片8259A的级联,能构成多达64级的矢量中断系统。
⑵ 本实验中使用3号中断源IR3,“
”插孔和IR3相连,中断方式为边沿触发方式,每拨1次AN开关产生一次中断,满5次中断,显示“good”。
如果中断源电平信号不符合规定要求,则自动转到7号中断,显示“Err”。
五、实验程序框图
图6-2主程序流程
图6-3IR3中断服务程序流程
图6-4IR7中断服务流程
六、实验步骤
1、按图6-1连好实验线路图。
⑴8259的INT连8088的INTR;⑵8259的INTA连8088的INTA;⑶“
”插孔和8259的3号中断IR3插孔相连,“
”端初始为低电平;⑷8259的CS端接FF80H孔。
2、输入并运行实验程序,系统显示8259-1。
3、按动AN开关按钮,按满5次显示good。
七、思考题:
若用IR5产生中断,要求修改硬件和软件并调试成功。
8、实验总结:
要换成IRT5中断,修改程序,修改控制字以及连线方式,对照着书上查格式,掌握了下位机和计算机的简单连接方式。
9、实验代码
IR3产生中断代码如下:
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产生中断代码如下:
CODESEGMENT;H8255-2.ASM
ASSUMECS:
CODE
IOCONPTEQU0FF2BH
IOAPTEQU0FF28H
IOBPTEQU0FF29H
IOCPTEQU0FF2AH
ORG11e0H
START:
MOVAL,82H
MOVDX,IOCONPT
OUTDX,AL
MOVDX,IOBPT
INAL,DX
MOVBYTEPTRDS:
[0601H],AL
MOVDX,IOCONPT
MOVAL,80H
OUTDX,AL
MOVDX,IOBPT
MOVAL,DS:
[0601H]
ORAL,0F0H
OUTDX,AL
MOVDX,IOCPT
MOVAL,0FFH
OUTDX,AL
MOVDX,IOBPT
MOVAL,00FH
OUTDX,AL
CALLDELAY1
IOLED0:
MOVAL,01011111B
MOVDX,IOBPT
OUTDX,AL
MOVAL,11111010B
MOVDX,IOCPT
OUTDX,AL
CALLDELAY1
CALLDELAY1
ORAL,0FFH
OUTDX,AL
MOVCX,8H
IOLED1:
MOVDX,IOCPT
MOVAL,DS:
[0601H]
ANDAL,10101111B
OUTDX,AL
CALLDELAY2
ORAL,01011111B
OUTDX,AL
CALLDELAY2
LOOPIOLED1
MOVDX,IOBPT
MOVAL,00FH
OUTDX,AL
CALLDELAY2
MOVAL,10101111B
MOVDX,IOBPT
OUTDX,AL
MOVAL,11110101B
MOVDX,IOCPT
OUTDX,AL
CALLDELAY1
CALLDELAY1
ORAL,0FFH
OUTDX,AL
MOVCX,8H
IOLED2:
MOVDX,IOCPT
MOVAL,DS:
[0601H]
ANDAL,01011111B
OUTDX,AL
CALLDELAY2
ORAL,10100000B
OUTDX,AL
CALLDELAY2
LOOPIOLED2
MOVDX,IOCPT
MOVAL,0F0H
OUTDX,AL
CALLDELAY2
JMPIOLED0
DELAY1:
PUSHAX
PUSHCX
MOVCX,0030H
DELY2:
CALLDELAY2
LOOPDELY2
POPCX
POPAX
RET
DELAY2:
PUSHCX
MOVCX,8000H
DELA1:
LOOPDELA1
POPCX
RET
CODEENDS
ENDSTART
实验三8255A并行口实验
一、实验目的
掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。
二、实验内容
用8255做输出口,控制十二个发光管亮灭,模拟交通灯管理。
三、实验接线图
图6-5
四、编程指南
⑴通过8255A控制发光二极管,PB4-PB7对应黄灯,PC0-PC3对应红灯,PC4-PC7对应绿灯,以模拟交通路灯的管理。
⑵要完成本实验,必须先了解交通路灯的亮灭规律,设有一个十字路口l、3为南北方向,2、4为东西方向,初始状态为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。
延时一段时间后,l、3路口的绿灯熄灭,而l、3路口的黄灯开始闪烁,闪烁若干次以后,l、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车,延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到l、3路口方向,之后,重复上述过程。
⑶程序中设定好8255A的工作模式及三个端口均工作在方式0,并处于输出状态。
⑷各发光二极管共阳极,使其点亮应使8255A相应端口的位清0。
五、实验程序框图
六、实验步骤
⒈ 在系统显示监控提示符“P.”时,按SCAL键。
⒉ 按图6-5连好实验线路
8255A:
PC0->L3,PC1->L6,PC2->L9,PC3->L12,PC4->L2,PC5->L5,PC6->L8,PC7->L11;
PB4->L1,PB5->L4,PB6->L7,PB7->L10
⒊在“P.”态时,输入11E0后,按EXEC键;系统显示执行符“┌”,同时Ll-Ll5发光二极管模拟交通灯显示。
七、思考题
如果通过8255A控制发光二极管,PB4-PB7对应红灯,PC0-PC3对应绿灯,PC4-PC7对应黄灯,以模拟交通路灯的管理,将如何实现。
八、实验总结:
这个实验麻烦些,连的线比较多,代码也比较长,但如果多看几遍,读懂程序,修改就不是问题了。
虽然实验箱只是一个小型的模拟平台,但是通过对它的学习和操作,我们对有关接口有了更深刻的了解。
九、实验代码
CODESEGMENT;H8255-2.ASM
ASSUMECS:
CODE
IOCONPTEQU0FF2BH
IOAPTEQU0FF28H
IOBPTEQU0FF29H
IOCPTEQU0FF2AH
ORG11e0H
START:
MOVAL,82H
MOVDX,IOCONPT
OUTDX,AL
MOVDX,IOBPT
INAL,DX
MOVBYTEPTRDS:
[0601H],AL
MOVDX,IOCONPT
MOVAL,80H
OUTDX,AL
MOVDX,IOBPT
MOVAL,DS:
[0601H]
ORAL,0F0H
OUTDX,AL
MOVDX,IOCPT
MOVAL,0F0H
OUTDX,AL
CALLDELAY1
IOLED0:
MOVAL,10100101B
MOVDX,IOCPT
OUTDX,AL
CALLDELAY1
CALLDELAY1
ORAL,0F0H
OUTDX,AL
MOVCX,8H
IOLED1:
MOVDX,IOBPT
MOVAL,DS:
[0601H]
ANDAL,10101111B
OUTDX,AL
CALLDELAY2
ORAL,01010000B
OUTDX,AL
CALLDELAY2
LOOPIOLED1
MOVDX,IOCPT
MOVAL,0F0H
OUTDX,AL
CALLDELAY2
MOVAL,01011010B
OUTDX,AL
CALLDELAY1
CALLDELAY1
ORAL,0F0H
OUTDX,AL
MOVCX,8H
IOLED2:
MOVDX,IOBPT
MOVAL,DS:
[0601H]
ANDAL,01011111B
OUTDX,AL
CALLDELAY2
ORAL,10100000B
OUTDX,AL
CALLDELAY2
LOOPIOLED2
MOVDX,IOCPT
MOVAL,0F0H
OUTDX,AL
CALLDELAY2
JMPIOLED0
DELAY1:
PUSHAX
PUSHCX
MOVCX,0030H
DELY2:
CALLDELAY2
LOOPDELY2
POPCX
POPAX
RET
DELAY2:
PUSHCX
MOVCX,8000H
DELA1:
LOOPDELA1
POPCX
RET
CODEENDS
ENDSTART
思考题实验代码:
硬件连接如下:
8255A:
PC0->L3,PC1->L6,PC2->L9,PC3->L12,红
PC4->L2,PC5->L5,PC6->L8,PC7->L11;绿
PB4->L1,PB5->L4,PB6->L7,PB7->L10
CODESEGMENT;H8255-2.ASM
ASSUMECS:
CODE
IOCONPTEQU0FF2BH
IOAPTEQU0FF28H
IOBPTEQU0FF29H
IOCPTEQU0FF2AH
ORG11e0H
START:
MOVAL,82H
MOVDX,IOCONPT
OUTDX,AL
MOVDX,IOBPT
INAL,DX
MOVBYTEPTRDS:
[0601H],AL
MOVDX,IOCONPT
MOVAL,80H
OUTDX,AL
MOVDX,IOBPT
MOVAL,DS:
[0601H]
ORAL,0F0H
OUTDX,AL
MOVDX,IOCPT
MOVAL,0FFH
OUTDX,AL
MOVDX,IOBPT
MOVAL,00FH
OUTDX,AL
CALLDELAY1
IOLED0:
MOVAL,01011111B
MOVDX,IOBPT
OUTDX,AL
MOVAL,11111010B
MOVDX,IOCPT
OUTDX,AL
CALLDELAY1
CALLDELAY1
ORAL,0FFH
OUTDX,AL
MOVCX,8H
IOLED1:
MOVDX,IOCPT
MOVAL,DS:
[0601H]
ANDAL,10101111B
OUTDX,AL
CALLDELAY2
ORAL,01011111B
OUTDX,AL
CALLDELAY2
LOOPIOLED1
MOVDX,IOBPT
MOVAL,00FH
OUTDX,AL
CALLDELAY2
MOVAL,10101111B
MOVDX,IOBPT
OUTDX,AL
MOVAL,11110101B
MOVDX,IOCPT
OUTDX,AL
CALLDELAY1
CALLDELAY1
ORAL,0FFH
OUTDX,AL
MOVCX,8H
IOLED2:
MOVDX,IOCPT
MOVAL,DS:
[0601H]
ANDAL,01011111B
OUTDX,AL
CALLDELAY2
ORAL,10100000B
OUTDX,AL
CALLDELAY2
LOOPIOLED2
MOVDX,IOCPT
MOVAL,0F0H
OUTDX,AL
CALLDELAY2
JMPIOLED0
DELAY1:
PUSHAX
PUSHCX
MOVCX,0030H
DELY2:
CALLDELAY2
LOOPDELY2
POPCX
POPAX
RET
DELAY2:
PUSHCX
MOVCX,8000H
DELA1:
LOOPDELA1
POPCX
RET
CODEENDS
ENDSTART
实验四8250串口实验
一、实验目的
(1)系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 实验
![提示](https://static.bdocx.com/images/bang_tan.gif)