好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

8.3 可编程中断控制器8259A及其应用.ppt

32页
  • 卖家[上传人]:pu****.1
  • 文档编号:591486584
  • 上传时间:2024-09-17
  • 文档格式:PPT
  • 文档大小:611.50KB
  • / 32 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第8章 中断系统 §8.3 可编程中断控制器8259A及其应用第8章 中断系统8.3.1 8259A8.3.1 8259A的基本功能的基本功能一一片片8259A8259A可可以以管管理理8 8级级中中断断,,可可扩扩展展至至6464级级,,每一级中断都可单独被屏蔽或允许每一级中断都可单独被屏蔽或允许可以设置并发送中断类型号可以设置并发送中断类型号能管理中断源的优先级能管理中断源的优先级8259A8259A设设计计有有多多种种工工作作方方式式,,可可通通过过编编程程选选择择(例如可以设置中断源的中断请求方式)(例如可以设置中断源的中断请求方式)中断接口中断接口8259A8259A是可编程中断控制器,用于管理是可编程中断控制器,用于管理 8080/80858080/8085、、8086/80888086/8088、、80286/8038680286/80386的可屏蔽中断的可屏蔽中断 8.3.2 8259A8.3.2 8259A的基本结构的基本结构INTAD7~D0INT中中断断请请求求寄寄存存器器中断屏蔽寄存器中断屏蔽寄存器数据数据总线总线缓冲器缓冲器IR0IR7读读/写写控制控制逻辑逻辑级联级联缓冲器缓冲器比较器比较器RDWRA0CSCAS0CSA1CAS2SP/EN优优先先级级分分析析器器中中断断服服务务寄寄存存器器控制逻辑控制逻辑 (1)中断请求寄存器中断请求寄存器IRR保存保存8条外界中断请求信号条外界中断请求信号IR0~~IR7的请求状态的请求状态Di位为位为1表示表示IRi引脚有中断请求;为引脚有中断请求;为0表示无请求表示无请求(2)中断服务寄存器中断服务寄存器ISR保存正在被保存正在被8259A服务着的中断状态服务着的中断状态Di位为位为1表示表示IRi中断正在服务中;为中断正在服务中;为0表示没有被服务表示没有被服务(3)中断屏蔽寄存器中断屏蔽寄存器IMR保存对中断请求信号保存对中断请求信号IR的屏蔽状态的屏蔽状态Di位为位为1表示表示IRi中断被屏蔽(禁止);为中断被屏蔽(禁止);为0表示允许表示允许8.3.2 8259A8.3.2 8259A的基本结构的基本结构————8259A的内部寄存器和模块的内部寄存器和模块 8.3.2 8259A8.3.2 8259A的基本结构的基本结构————8259A的内部寄存器和模块的内部寄存器和模块(4)优先权判别器优先权判别器PR是是8259A中中断断控控制制器器的的核核心心。

      对对来来自自IRR且且未未被被屏屏蔽蔽的的中中断断请请求求排排队队,,选选出出优优先先权权最最高高者者与与ISR内内容容比比较较,,判判断是否发送断是否发送INT(5)数据总线缓冲器数据总线缓冲器是是双双向向三三态态8位位缓缓冲冲器器,,用用于于连连接接系系统统数数据据总总线线和和8259A内内部部总总线线,,传传递递CPU发发送送的的控控制制信信息息,,返返回回8259A的状态信息的状态信息(6)读读/写控制电路写控制电路Di位为位为1表示表示IRi中断正在服务中;为中断正在服务中;为0表示没有被服务表示没有被服务 8.3.2 8259A8.3.2 8259A的基本结构的基本结构————8259A的内部寄存器和模块的内部寄存器和模块(7)级联缓冲级联缓冲/比较比较用用于于实实现现多多片片8259A片片与与片片之之间间的的级级联联,,扩扩充充管管理理的的中中断源的范围断源的范围(8)控制逻辑控制逻辑对对8259A芯芯片片内内部部的的工工作作进进行行控控制制,,使使其其按按编编程的规定工作程的规定工作 8259A8259A是一个使用是一个使用+5V+5V电源的电源的2828脚双列直插芯片。

      脚双列直插芯片IRIR0 0~~IRIR7 7——中断请求输入信号,一般中断请求输入信号,一般IRIR0 0优先级优先级最高,最高,IRQIRQ7 7最低,但优先级可由编程改变最低,但优先级可由编程改变①①INTINT——中断请求输出信号,接中断请求输出信号,接CPUCPU的的INTRINTR引脚②②INTAINTA——中断响应,由此脚接收来自中断响应,由此脚接收来自CPUCPU的中断的中断响应信号响应信号③③CSCS——片选,当片选,当CSCS有效时,该芯片工作有效时,该芯片工作④④WRWR——写信号,有效时写信号,有效时CPUCPU将将命令字写入命令字写入8259A8259A⑤⑤8.3.3 8259A8.3.3 8259A中断控制器的引脚(中断控制器的引脚(1 1)) RDRD——读信号,有效时读出读信号,有效时读出8259A8259A的的内部寄存器内部寄存器⑥⑥A A0 0——用来指出访问用来指出访问8259A8259A的哪个端口的哪个端口⑦⑦SP/ENSP/EN——此引脚具有双向功能作为输入时,用此引脚具有双向功能作为输入时,用来决定本片是主片还是从片,为来决定本片是主片还是从片,为1 1则为主片,否则为主片,否则为从片;作为输出时,则为从片;作为输出时,SP/ENSP/EN接数据总线驱动接数据总线驱动器的选通端器的选通端,,启动数据总线驱动器。

      启动数据总线驱动器⑧⑧CASCAS2~2~CASCAS0 0——级联信号线当级联信号线当8259A8259A作主片时为输作主片时为输出线,作从片时为输入线出线,作从片时为输入线⑨⑨8.3.3 8259A8.3.3 8259A中断控制器的引脚(中断控制器的引脚(2 2)) 8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(1 1))————确定中断向量号的方式确定中断向量号的方式1. 确定中断向量号的方式确定中断向量号的方式⑴ ⑴ 8259A8259A有有8 8个中断源,为了在个中断源,为了在CPUCPU响应中断时,可响应中断时,可以通过中断向量号查找中断向量表,来获取中断服以通过中断向量号查找中断向量表,来获取中断服务程序的入口地址,每个中断源必须有一个中断向务程序的入口地址,每个中断源必须有一个中断向量号;量号;⑵ ⑵ 8259A8259A只有只有8 8个中断源,所以只需要个中断源,所以只需要3 3位就可以表位就可以表示它们,因此,示它们,因此, 8259A8259A规定中断类型号的高规定中断类型号的高5 5位相同;位相同;而低而低3 3位不同,位不同,IR0IR0对应对应000000,, IR1IR1对应对应001001·· ·· ·· ·· ·· IR7 IR7对应对应111111 2. 结束中断的方式结束中断的方式⑴⑴ 自动结束中断方式自动结束中断方式此方式下,当此方式下,当8259A8259A收到第二个收到第二个INTAINTA后,自动清除当前后,自动清除当前ISRISR中的对应位中的对应位。

      它只能使用于单片它只能使用于单片8259A8259A系统系统,,且多且多个中断不嵌套的情况个中断不嵌套的情况8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(2 2))————结束中断的方式结束中断的方式8259A通过通过ISR登记正在处理的中断,复位在登记正在处理的中断,复位在ISR的登记,的登记,表明一次中断服务的结束,其结束方式有两种:表明一次中断服务的结束,其结束方式有两种: 8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(2 2))⑵⑵ 非自动结束中断方式非自动结束中断方式①① 一般中断结束方式一般中断结束方式用于用于全嵌套方式全嵌套方式,通过写,通过写OCWOCW2 2,使其,使其EOI=1EOI=1,,SL=0SL=0,,R=0R=0实现这时实现这时ISRISR中优先权最高的位清中优先权最高的位清0 0,结束当前,结束当前正在处理的中断(正在处理的中断(P227P227图图8-3-118-3-11))②② 特殊中断结束方式特殊中断结束方式用于用于非全嵌套方式非全嵌套方式,发特殊中断结束命令写,发特殊中断结束命令写OCWOCW2 2使其使其EOI=1EOI=1,,SL=1SL=1,,R=0R=0即可,此时由即可,此时由L L2 2、、 L L1 1 、、L L0 0三位指出三位指出IRIRi i。

      8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(2 2))————结束中断的方式结束中断的方式 8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(2 2))v级连方式下,一般不用中断自动结束方式,而用级连方式下,一般不用中断自动结束方式,而用非自动结束方式不管用哪一种非自动结束方式,非自动结束方式不管用哪一种非自动结束方式,都至少连发两次中断结束命令,一次对主片,一都至少连发两次中断结束命令,一次对主片,一次对从片次对从片注意:注意:8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(2 2))————结束中断的方式结束中断的方式 8.3.4 8259A8.3.4 8259A的工作方式的工作方式3.优先权管理方式优先权管理方式⑴⑴ 全嵌套方式全嵌套方式固定优先级,固定优先级,IR0级最高,级最高,IR7级最低,其余级最低,其余类推,可响应更高级别的中断类推,可响应更高级别的中断⑵⑵ 特殊全嵌套方式特殊全嵌套方式一般用于级联的主片,和全嵌套方式基本相一般用于级联的主片,和全嵌套方式基本相同,只有一点不一样,就是在特殊全嵌套方同,只有一点不一样,就是在特殊全嵌套方式下,对于主片来说,当处理某一中断时,式下,对于主片来说,当处理某一中断时,如果有同级的中断请求,也会给予响应。

      如果有同级的中断请求,也会给予响应8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(3 3))————优先权管理方式优先权管理方式 ⑶⑶ 自动循环优先级方式自动循环优先级方式一般用在系统中多个中断源优先级相等的场合一般用在系统中多个中断源优先级相等的场合在此方式下,优先级队列是变化的,一个设备在此方式下,优先级队列是变化的,一个设备执行中断后,其优先级自动降为最低执行中断后,其优先级自动降为最低 一般对于外中断源级别要求不高的情况下使用一般对于外中断源级别要求不高的情况下使用这种优先级方式这种优先级方式8.3.4 8259A8.3.4 8259A的工作方式的工作方式8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(3 3))————优先权管理方式优先权管理方式 4.中断屏蔽的方式中断屏蔽的方式⑴⑴ 一般屏蔽方式一般屏蔽方式A、通过设置使中断屏蔽寄存器某一位置、通过设置使中断屏蔽寄存器某一位置1,,就屏蔽了某一级中断;就屏蔽了某一级中断;B、实际应用的时候,有效的中断申请一般是、实际应用的时候,有效的中断申请一般是不应该被屏蔽的,不应该被屏蔽的,IMR只是在没有中断申请的只是在没有中断申请的时候,通过屏蔽来防止一些干扰信号作为中断时候,通过屏蔽来防止一些干扰信号作为中断申请,错误地输入的申请,错误地输入的8259A;;C、中断屏蔽的另一层含义就是高优先级的中、中断屏蔽的另一层含义就是高优先级的中断对低优先级中断的屏蔽断对低优先级中断的屏蔽8.3.4 8259A8.3.4 8259A的工作方式的工作方式8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(4 4))————中断屏蔽方式中断屏蔽方式 4.中断屏蔽的方式中断屏蔽的方式8.3.4 8259A8.3.4 8259A的工作方式的工作方式8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(4 4))————中断屏蔽方式中断屏蔽方式⑵⑵ 特殊屏蔽方式特殊屏蔽方式通过设置使通过设置使IMRIMR某一位置某一位置1 1,同时清零,同时清零ISRISR的对的对应位,以便屏蔽本级,开放较低级,一般很少应位,以便屏蔽本级,开放较低级,一般很少使用使用 5. 8259A的和系统数据总线连接的方式的和系统数据总线连接的方式((2)) 缓冲方式缓冲方式在多片在多片8259A级联的大系统中,级联的大系统中,8259A通过通过总总线驱动器线驱动器和系统总线相连,即缓冲方式。

      和系统总线相连,即缓冲方式1)) 非缓冲方式非缓冲方式单片单片8259A或一些不太大的系统中,或一些不太大的系统中,8259A与与系统总线系统总线直接直接相连,此即非缓冲方式相连,此即非缓冲方式8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(5 5))——8259A的和系统数据总线连接的方式的和系统数据总线连接的方式 6. 中断触发方式中断触发方式⑴⑴ 边沿触发方式边沿触发方式中断请求输入端的中断请求输入端的上升沿上升沿作为中断请求信号作为中断请求信号⑵⑵ 电平触发方式电平触发方式中断请求输入端的中断请求输入端的高电平高电平作为中断请求信号作为中断请求信号⑶⑶ 中断查询方式中断查询方式利用软件查询中断源利用软件查询中断源8.3.4 8259A8.3.4 8259A的工作方式的工作方式8.3.4 8259A8.3.4 8259A的工作方式(的工作方式(6 6))————中断触发方式中断触发方式 8.3.5 8259A8.3.5 8259A的编程的编程8259A8259A工工作作时时先先初初始始化化,,给给8259A8259A设设置置初初始始化化命命令令字字( (ICWiICWi) ),,然然后后8259A8259A自自动动开开始始工工作作;;工工作作过过程程中中,,可可通通过过操操作作命命令令字字( (OCWiOCWi) ) 动动态态改改变变8259A8259A的的操操作作和控制方式。

      和控制方式8259A8259A有有两两个个端端口口地地址址,,一一个个偶偶地地址址(A0=0)(A0=0),,一一个个奇地址奇地址(A0=1) (A0=1) ,并假定偶地址较低,奇地址较高,并假定偶地址较低,奇地址较高 1. 初始化命令字初始化命令字8259A8259A的初始化命令字共的初始化命令字共4 4个个(ICW(ICW1 1~~ICWICW4 4) ),,其中其中ICWICW1 1和和ICWICW2 2必须设置,必须设置, ICWICW3 3级联时才需要,级联时才需要, ICWICW4 4只在只在8086/80888086/8088系系统中需要设置,其设置流程如右图所统中需要设置,其设置流程如右图所示v初始化命令字必须初始化命令字必须按顺序写入按顺序写入通常它在系统启动过程中即已完成,常它在系统启动过程中即已完成,而且在系统整个工作期间而且在系统整个工作期间保持不变保持不变8.3.5 8259A8.3.5 8259A的编程(的编程(1 1))————初始化命令字初始化命令字 ⑴⑴ ICW1芯片控制初始化命令字芯片控制初始化命令字,写入偶地址端口,写入偶地址端口(A0=0),,其格式如下:其格式如下:1 1 LTIMLTIMSNGLSNGLADIADIICIC4 40 0A A0 07 7 6 6 5 5 4 43 32 21 10 01 1:需要设置:需要设置ICWICW4 40 0:不需要设置:不需要设置ICWICW4 41 1:单级使用:单级使用0 0:级联使用:级联使用1 1:调用地址间隔为:调用地址间隔为4 40 0:调用地址间隔为:调用地址间隔为8 8((80868086不用)不用)1 1:电平触发:电平触发0 0:边沿触发:边沿触发80868086不用不用特特征征位位 设置中断类型码设置中断类型码,写入奇地址端口,写入奇地址端口(A0=1),,其其格式如下:格式如下:⑵⑵ ICW2最低最低3位为位为IRi的编码的编码 ⑶⑶ ICW3主主/从片初始化命令字从片初始化命令字,,只对级联方式有效只对级联方式有效,写入奇,写入奇地址端口地址端口(A0=1),,其格式如下:其格式如下:①① 对对主主片,说明片,说明IRi的连接情况的连接情况 ⑶⑶ ICW3主主/从片初始化命令字从片初始化命令字,,只对级联方式有效只对级联方式有效,写入奇,写入奇地址端口地址端口(A0=1),,其格式如下:其格式如下:②② 对从片,说明该片连到主片的哪个端对从片,说明该片连到主片的哪个端。

      ⑷⑷ ICW4方式控制命令字方式控制命令字,,8086/8088必须设置必须设置,写入奇地址,写入奇地址端口端口(A0=1),,其格式如下:其格式如下: 某系统中某系统中8259A单级使用,端口地址为单级使用,端口地址为80H,,81H,,初始化命令如下:初始化命令如下:例:例:MOV AL, 13HOUT80H, ALMOV AL, 18HOUT81H, ALMOV AL, 0DHOUT81H, AL;00010011:;00010011:边沿触发边沿触发, ,单片单片, ,需需ICWICW4 4;ICW;ICW1 1; ;类型码为类型码为18H18H~~1FH1FH;ICW;ICW2 2;00001101:8086;00001101:8086系统系统, ,非自动非自动EOIEOI,,主主片片, ,缓冲方式缓冲方式, ,一般全嵌套一般全嵌套;ICW;ICW4 4 2. 操作命令字操作命令字8259A8259A有有3 3个操作命令字个操作命令字(OCW(OCW1 1~~OCWOCW3 3) ),,在应用程在应用程序内部设置,可多次写入序内部设置,可多次写入设置时次序上没有设置时次序上没有严格要求,但端口有严格规定,严格要求,但端口有严格规定,OCWOCW1 1为奇地址,为奇地址,OCWOCW2 2和和OCWOCW3 3为偶地址。

      为偶地址8.3.5 8259A8.3.5 8259A的编程(的编程(2 2))————操作命令字操作命令字 ⑴⑴ OCW1中断屏蔽命令字中断屏蔽命令字,写入奇地址端口,写入奇地址端口(A0=1),,其格其格式如下:式如下:若某位为若某位为1,则该位中断请求被屏蔽则该位中断请求被屏蔽 ⑵⑵ OCW2优先级循环方式及中断结束方式命令字优先级循环方式及中断结束方式命令字,写入偶地,写入偶地址端口址端口(A0=0),,其格式如下:其格式如下:1:循环优先级方式循环优先级方式R0:固定优先级方式固定优先级方式SL:决定决定L2、、L1、、L0是否有效,为是否有效,为1则有则有效,否则无效效,否则无效EOI:中断结束方式中断结束方式位,为位,为1则清则清ISR的的对应位对应位IRi ⑶⑶ OCW3写入偶地址端口写入偶地址端口(A0=0),,其格式如下:其格式如下:功能功能设置和撤销特殊屏蔽方式设置和撤销特殊屏蔽方式设置中断查询方式设置中断查询方式设置对设置对8259A内部寄存器的读命令内部寄存器的读命令 3.两个端口如何对应两个端口如何对应7条命令?条命令?偶地址偶地址::ICW1,,OCW2,,OCW3D4=1::ICW1D4=0D3=0::OCW2D3=1::OCW3奇地址奇地址::ICW2,,ICW3,,ICW4,,OCW1按顺序,一定先有按顺序,一定先有ICW1,,然后决定:然后决定:ICW2,,ICW3,,ICW4顺序顺序 级联级联 D0写入初始化命令字后的的奇地址则为写入初始化命令字后的的奇地址则为OCW1 4.8259A的初始化编程及应用程序举例的初始化编程及应用程序举例例例8-5 初始化命令字的写入(初始化命令字的写入(掌握掌握))例例8-6 改改写写除除法法溢溢出出的的中中断断服服务务程程序序,,能能够够处处理理除除法法溢溢出出的的两两种种情情况况::当当除除数数为为0时时,,给给出出错错误误信信息息;;当当除除数数不不为为0时时,,计计算算实实际际的的商商和和余余数数,,并并通通过过子子程程序序的的出出口口参参数数来来传递。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.