8259A可编程中断控制器芯片(PIC,它是可以用程序控制的中断控制芯片。单个的8259A能管理8级向量优先级中断。在不增加其他电路的情况下,最多可以级联成64级的向量优级中断系统。8259A内部结构由8个部分组成:(1)数据总线缓冲器(DATABUSBUFFER):将8259A连接到系统数据总线上,控制字和状态信息通过此传送。(2)读写控制逻辑READWRITELOGIC:主要是接收CPU的各种命令字,此外也可将8259A的状态信息传到数据总线上。(3)级联缓冲器比较器CASCADEBUFFERCOMPARATOR:本功能模块储存和比较系统中的所有8259A的ID号。主片将请求中断的从片的ID号发送到CAS02上,被选的从片就会在下一个或第二个INTA脉冲到来时将其中断程序地址发送到系统数据线上。(4)中断请求寄存器IRR:保存8条外界中断请求信号IR0IR7的请求状态。Di位为1表示IRi引脚有中断请求,为0则无。(5)中断屏蔽寄存器IMR:保存对中断请求信号IR的屏蔽状态。Di位为1表示IRi中断被屏蔽,为0表示允许该中断。(6)正在服务寄存器ISR:保存正在被8259A服务着的中断状态。Di位为1表示IRi中断正在被服务中。(7)优先权分析器PR:本逻辑模块决定IRR中中断请求的优先级,当INTA脉冲到来
f时将相应的位存入ISR中(8)控制逻辑CONTROLLOGIC
8259A共有28个引脚:输入输出IIII
符号VccGND
引脚号281412
功能描述电源5V接地片选:低电平有效,来自地址译码器的输出,当其有效时,CPU才能对8259A进行读写操作写信号:低电平有效,来自CPU的输出;当该有效且CS有效时,使8259A接受CPU送来的命令字。读信号:低电平有效,来自CPU的输出;当CS有效且RD有效时,使8259A将状态信息放到数据总路线上,CPU检供测数据线单片工作时不用,级联时与从片相连当工作在在缓冲器方式下控制缓冲器收发(EN),是输出信号,EN1,数据方向由CPU→8259A;EN0,方向相反;工作在非缓冲器方式时用来指定是主片(sp1)还是从片(sp0),是输入信号向CPU发出的中断请求信号中断请求信号输入,来自外部接口电路中断响应信号,由此接收CPU发来的中断响应脉冲和CSWRRD结合使用,用于内部寄存器选择,通常连接到CPU的A0地址线上
CS
WR
RDD7D0CAS0CAS2
341112,13,15
IIOIO
SPEN
16
IO
INTIR0IR7
1718252627
OIII
INTAA0
在MCS8085系统上中断响应过程如下:1当IR7~IR0中有一个或几个中断源变成高电平时,使相应的IRR位置位。28259A对IRR和IMR提供的情况进行分析处理,INTr