使用8259A单级中断控制实验Word下载.docx
- 文档编号:16528534
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:26
- 大小:211.78KB
使用8259A单级中断控制实验Word下载.docx
《使用8259A单级中断控制实验Word下载.docx》由会员分享,可在线阅读,更多相关《使用8259A单级中断控制实验Word下载.docx(26页珍藏版)》请在冰豆网上搜索。
*写初始化命令字ICW3,以定义主片8259A中断请求线上IR0~IR7有无级联的8259A从片。
xHAQX74J0X
第i位=0,表明IRi引脚上无从片
第i位=1,表明IRi引脚上有从片
*写初始化命令ICW4,用来定义8259A工作时用8085模式,还是8088模式,以及中断服务寄存器复位方式等。
LDAYtRyKfE
(2>
写控制命令字
*写操作命令字0CW1,用来设置或清除对中断源的屏蔽。
第i位=0,对应的中断请求IRi开放
第i位=1,对应的中断请求IRi屏蔽
注:
OCW1如不写,则在初始化命令写入后,OCW1为全开放状态。
*操作命令字OCW2,设置优先级是否进行循环、循环方式及中断结束方式。
注:
8259A复位时自动设置IR0优先权最高,IR7优先权最低。
*操作命令字OCW3,设置查询方式、特殊屏蔽方式以及读取8259中断寄存器的当前状态。
(3>
8259A查询字
通过OCW3命令字的设置,可使CPU处于查询方式,随时查询8259A有否中断请求,有则转入相应的中断服务程序。
Zzz6ZB2Ltk
三、实验内容
本系统中已设计有一片8259A中断控制芯片,工作于主片方式,8个中断请求输入端IR0~IR7对应的中断型号为8~F,其和中断矢量关于如下表5-3所示。
dvzfvkwMI1
表5-3
根据实验原理图5-20<
见下页),8259A和8088系统总线直接相连,8259A上连有一系统地址线A0,故8259A有2个端口地址,本系统中为20H、21H。
20H用来写ICW1,21H用来写ICW2、ICW3、ICW4,初始化命令字写好后,再写操作命令字。
OCW2、OCW3用口地址20H,OCW1用口地址21H。
图5-14中,使用了3号中断源,IR3插孔和SP插孔相连,中断方式为边沿触发方式,每按一次AN按钮产生一次中断信号,向8259A发出中断请求信号。
如果中断源电平信号不符规定要求则自动转到7号中断,显示“Err”。
CPU响应中断后,在中断服务中,对中断次数进行计数并显示,计满5次结束,显示器显示“8259Good”。
rqyn14ZNXI
四、实验线路连接
8259A的IR3插孔和SP插孔相连。
SP插孔初始电平为低电平。
图5-20
五、实验软件框图
六、实验软件清单
CODESEGMENT
ASSUMECS:
CODE
INTPORT1EQU0020H
INTPORT2EQU0021H
INTQ3EQUINTREEUP3
INTQ7EQUINTREEUP7
CONTPORTEQU00DFH
DATAPORTEQU00DEH
DATA0EQU0580H
DATA1EQU0500H
DATA2EQU0508H
DATA3EQU0518H
DATA4EQU0520H
ORG1800H
START:
JMPTint1
Tint1:
CALLFORMAT
CLD
MOVDI,DATA0
MOVCX,08H
XORAX,AX
REPSTOSW
MOVSI,DATA3
CALLLEDDISP。
DISP8259-1
MOVAX,0H
MOVDS,AX
CALLWRINTVER。
WRITEINTRRUPT
MOVAL,13H
MOVDX,INTPORT1
OUTDX,AL
MOVAL,08H
MOVDX,INTPORT2
MOVAL,09H
MOVAL,0F7H
MOVBYTEPTRDS:
[0601H],01H。
TIME=1
STI
WATING:
JMPWATING
WRINTVER:
MOVAX,0H
MOVES,AX
MOVDI,002CH
LEAAX,INTQ3
STOSW
MOVAX,CS
MOVDI,003CH
LEAAX,INTQ7
RET
INTREEUP3:
CLI
MOVAL,DS:
[0601H]
CALLCONVERS
MOVSI,DATA0
CALLLEDDISPD
MOVAL,20H
ADDBYTEPTRDS:
[0601H],01H
CMPBYTEPTRDS:
[0601H],06H
JNAINTRE1
MOVSI,DATA4
CALLLEDDISP
INTRE3:
JMPINTRE3
CONVERS:
MOVBH,0H
ANDAL,0FH
MOVBL,AL
MOVAL,CS:
[BX+DATA2]
MOVBX,DATA0
MOVDS:
[BX],AL
INTRE1:
IRET
INTREEUP7:
CLI
MOVSI,DATA1
LEDDISP:
MOVAL,90H
MOVDX,CONTPORT
[0600H],00
LED1:
[0600H],07H
JALED2
MOVBL,DS:
[0600H]
MOVBH,0H
[BX+SI]
MOVDX,DATAPORT
[0600H],01H
JNZLED1
LED2:
LEDDISPD:
LEDD1:
JALEDD2
JNZLEDD1
LEDD2:
FORMAT:
MOVBX,0
MOVWORDPTRDS:
[BX+0500H],5050H
ADDBX,2
[BX+0500H],0079H
[BX+0500H],0000H
[BX+0500H],063FH
[BX+0500H],4F5BH
[BX+0500H],6D66H
[BX+0500H],077DH
[BX+0500H],6F7FH
[BX+0500H],7C77H
[BX+0500H],5E39H
[BX+0500H],7179H
[BX+0500H],4006H
[BX+0500H],4040H
[BX+0500H],6D6FH
[BX+0500H],7F5BH
[BX+0500H],3F5EH
[BX+0500H],5C3FH
CODEENDS
ENDSTART
七、实验步骤
1、按图5-20连好实验线路
2、运行实验程序
在系统显示“DVCC-86H”状态下,按任意键,系统显示命令提示符“-”。
按GO键,显示“1000XX”
输入F000:
B2E0
按EXEC键,在DVCC-8086H上显示“8259-1”。
3、按AN按键,每按二次产生一次中断,在显示器左边一位显示中断次数,满5次中断,显示器显示“8259good”。
EmxvxOtOco
实验六8255A可编程并行口实验(一>
1、掌握并行接口芯片8255A和微机接口的连接方法。
2、掌握并行接口芯片8255A的工作方式及其编程方法。
1、8255A结构
8255A是可编程并行接口芯片,双列直插式封装,用+5V单电源供电,如图5-6是8255A的逻辑框图,内部有3个8位I/O端口:
A口、B口、C口;
也可以分为各有12位的两组:
A和B组,A组包含A口8位和C口的高四位,B组包含B口8位和C口的低4位;
A组控制和B组控制用于实现方式选择操作;
读写控制逻辑用于控制芯片内寄存器的数据和控制字经数据总线缓冲器送入各组接口寄存器中。
由于8255A数据总线缓冲器是双向三态8位驱动器,因此可以直接和8088系统数据总线相连。
SixE2yXPq5
2、8255A端口地址见表5-1
表5-1
图5-12
3、8255A工作方式
8255A芯片有三种工作方式:
方式0、方式1、方式2。
它通过对控制寄存器写入不同的控制字来决定其三种不同的工作方式。
6ewMyirQFL
方式0:
基本输入/输出
图5-7(a>
方式0引脚功能
如图5-13<
a)所示。
该方式下的A口8位和B口8位可以由输入的控制字决定为输入或输出,C口分成高4位(PC7~PC4>
和低4位(PC3~PC0>
两组,也有控制字决定其输入或输出。
需注意的是:
该方式下,只能将C口其中一组的四位全部置为输入或输出。
kavU42VRUs
方式1:
选通输入/输出
图5-13(b>
方式1输入图5-13(c>
方式1输出y6v3ALoS89
b)、(c>
所示。
该方式又叫单向输入输出方式,它分为A、B两组,A组由数据口A和控制口C的高4位组成,B组由数据口B和控制口C的低4位组成。
数据口的输入/输出都是锁存的,与方式0不同,由控制字来决定它作输入还是输出。
C口的相应位用于寄存数据传送中所需的状态信号和控制信息。
M2ub6vSTnP
方式2:
双向输入输出
图5-13(D>
方式2双向输入输出
d)所示。
本方式只有A组可以使用,此时A口为输入输出双向口,C口中的5位(PC3~PC7>
作为A口的控制位。
0YujCfmUCw
4、8255A控制字
(1>
方式选择控制字
(2>
PC口按位置/复位控制字
三、实验内容
1、实验原理
如实验原理图5-14所示,PC口8位接8个开关K1~K8,PB口8位接8个发光二极管,从PC口读入8位开关量送PB口显示。
拨动K1~K8,PB口上接的8个发光二极管L1~L8对应显示K1~K8的状态。
eUts8ZQVRd
图5-14
2、实验线路连接
<
1)8255A芯片PC0~PC7插孔依次接K1~K8。
<
2)8255A芯片PB0~PB7插孔依次接L1~L8。
3)8255A的CS插孔接译码输出070H-07FH插孔。
四、实验软件框图
五、实验软件清单
IOCONPTEQU0073H
IOCPTEQU0072H
IOBPTEQU0071H
JMPIOLED
IOLED:
MOVAL,89H
MOVDX,IOCONPT
NOP
IOLED1:
MOVDX,IOCPT
INAL,DX
MOVDX,IOBPT
MOVCX,0FFFFH
DELAY:
LOOPDELAY
JMPIOLED1
[0600H],00LED1:
[0600H],07HsQsAEJkW5T
[BX+DATA1]
[BX+0500H],6D6DH
六、实验步骤
1、按图5-14连好线路。
2、运行实验程序。
在系统显示“DVCC-86H”状态下,按任意键,显示器显示“-”。
按GO键,显示“1000XX”
输入F000:
B160
再按EXEC键,在DVCC-8086H显示上显示器“8255-1”,同时拨动K1~K8,L1~L8会跟着亮灭。
GMsIasNXkA
8255A可编程并行口实验(二>
进一步掌握8255A可编程并行口使用方法。
二、实验内容
实验原理图如图5-15所示,PB4~PB7和PC0~PC7分别与发光二极管电路L1~L12相连,本实验为模拟交通灯实验。
交通灯的亮灭规律如下:
TIrRGchYzg
设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;
延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;
延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。
7EqZcWLZNX
图5-15
8255A的PB4~PB7对应黄灯,PC0~PC3对应红灯,PC4~PC7对应绿灯。
8255A工作于模式0,并置为输出。
由于各发光二极管为共阳极,使其点亮应使8255A相应端口清0。
lzq7IGf02E
8255CS插孔连译码输出070H-07FH插孔。
L1—PC4L4—PC5L7—PC6L10—PC7
L2—PB4L5—PB5L8—PB6L11—PB7
L3—PC0L6—PC1L9—PC2L12—PC3
三、实验软件框图
四、实验软件清单
IOAPTEQU0070H
IOBDATAEQU0500H
DATA1EQU0640H
MOVAL,82H
[0501H],AL
MOVAL,80H
[0501H]
ORAL,0F0H
MOVAL,0F0H
CALLDELAY1
IOLED0:
MOVAL,10100101B
MOVCX,8H
ANDAL,10101111B
CALLDELAY2
ORAL,01010000B
LOOPIOLED1
MOVAL,01011010B
IOLED2:
ANDAL,01011111B
ORAL,10100000B
LOOPIOLED2
JMPIOLED0
DELAY1:
PUSHAX
PUSHCX
MOVCX,0030H
DELY2:
LOOPDELY2
POPCX
POPAX
DELAY2:
MOVCX,8000H
DELA1:
LOOPDELA1
[BX+0640H],405BH
[BX+0640H],4040H
[BX+0640H],6D6DH
[BX+0640H],7F5BH
五、实验步骤
1、按图5-15连好实验线路
2、运行实验程序
按GO键,显示“1000XX”
B1B0
按EXEC键,在DVCC-8086H上显示“8255-2”。
同时L1~L12发光二极管模拟交通灯显示。
zvpgeqJ1hk
实验七8253A定时/计数器实验
学习8253A可编程定时/计数器与8088CPU的接口方法;
了解8253A的工作方式;
掌握8253A在各种方式下的编程方法。
NrpoJac3v1
1、8253A内部结构
8253A定时/计数器具有定时、计数双功能。
它具有三个相同且相互独立的16位减法计数器,分别称为计数器0、计数器1、计数器2。
每个计数器计数频率为0~2MHZ,其内部结构如图5-16所示。
由于其内部数据总线缓冲器为双向三态,故可直接接在系统数据总线上,通过CPU写入计数初值,也可由CPU读出计数当前值;
其工作方式通过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 使用 8259 中断 控制 实验