7. 【可编程中断控制器8259A】(上):内部功能结构+各引脚解释、中断过程、工作方式

您所在的位置:网站首页 54328芯片引脚功能 7. 【可编程中断控制器8259A】(上):内部功能结构+各引脚解释、中断过程、工作方式

7. 【可编程中断控制器8259A】(上):内部功能结构+各引脚解释、中断过程、工作方式

2024-07-13 20:40| 来源: 网络整理| 查看: 265

文章目录 8259A内部功能结构+各引脚解释8259的中断过程8259的工作方式1. 设置优先权方式(1)普通全嵌套方式:默认【IR0优先级最高、 IR7最低】(2)特殊全嵌套方式【能够响应同等优先级的中断请求。用在多片级联的场合。】(3)优先级自动循环方式(4)优先级特殊循环方式 2. 屏蔽中断源方式(1)普通屏蔽方式(2)特殊屏蔽方式【可以实现低级中断嵌套高级中断】 3. 结束中断处理方式(1)自动结束方式(2)非自动结束方式 4. 中断触发方式(1)电平触发:高电平有效。(2)边沿触发:上升沿有效。 5. 数据线连接方式(1)缓冲方式【需经过`数据总线驱动器(8286)`与`系统总线`相连】(2)非缓冲方式【 8259直接与`系统总线`相连。】

可编程中断控制器8259A的用处

可为CPU管理和处理8个中断源电路的中断,并对它们进行优先级管理。可与其它8个8259A芯片组成主从式中断系统,实现64级中断源控制。优先级方式在执行程序时可动态改变,有多种中断管理方式。每一中断源中断都可以屏蔽或允许,可通过编程选择。能自动送出中断类型号,使CPU方便的找到中断服务程序的入口地址

8259A内部功能结构+各引脚解释

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

8259的中断过程

① 由 【中断请求寄存器IRR 】锁存外部的中断申请。             若IR0~IR7引脚上有中断申请,则将IRR相应位置1

② 决定是否通过INT引脚向CPU发出中断请求。 由中断屏蔽寄存器IMR决定IRR中的中断申请是否进入优先级判别电路PR。

在这里插入图片描述

③优先级判决 优先级判别电路PR根据新进入的中断申请和ISR的内容,决定是否发向CPU发出中断申请信号。

如果新进入的中断申请比ISR中记录的中断请求的优先级高,则通过8259的INT引脚向CPU发出中断请求信号;如果新进入的中断申请比ISR中记录的中断请求的优先级低或同级,则不向CPU发中断请求信号。

④CPU决定是否响应中断请求

CPU接收到INTR上的中断申请信号后:

如果IF标志为1,则处理完当前的指令后,向8259的#INTA引脚发两个连续的负脉冲【就是可以响应】。如果IF标志为0,则CPU不发中断响应信号,即中断申请被IF屏蔽。 在这里插入图片描述

⑤ 8259A在接收到#INTA信号后,使ISR相应位置1,IRR相应位置0

⑥ 8259在#INTA引脚的第二负脉冲期间,向数据总线输送8位的中断向量号。

⑦中断结束时,要在中断服务程序中发中断结束命令,使ISR的相应位置0。 若8259工作在中断自动结束方式,则在#INTA引脚的第二个负脉冲结束时,使ISR的相应位置0。

8259的工作方式

在这里插入图片描述

1. 设置优先权方式 (1)普通全嵌套方式:默认【IR0优先级最高、 IR7最低】

全嵌套的规则 : 高级中断可以进入低级中断、低级中断不可以进入高级中断

在这里插入图片描述 全嵌套方式的工作条件【单片8259】:

在主程序中有STI指令开中断,使IF=1。在中断服务程序中再次开中断,才能进行中断嵌套。在中断程序结束时,必须执行中断结束指令,使ISR中相应位置0,然后才能执行IRET中断返回指令。 (2)特殊全嵌套方式【能够响应同等优先级的中断请求。用在多片级联的场合。】

在多片级联时仍能实现中断嵌套

工作条件:

主片:设为特殊全嵌套方式。从片:设为除了特殊全嵌套以外的任一种优先级方式 (3)优先级自动循环方式

从IR0~IR7进入的中断轮流具有最高优先级。 初始时,IR0最高,IR7最低。 此后优先级自动循环,即:当前被响应的中断优先级最低,其后面的一个优先级最高,如下图。

在这里插入图片描述

(4)优先级特殊循环方式

和(3)不同:初始时,最低优先级是编程设置的。

2. 屏蔽中断源方式 (1)普通屏蔽方式

将IMR中的某一位/几位置1,则相应IRR中的中断请求被屏蔽,不能通过8259送到CPU。 注意:IMR中的某位置1后,并不影响IRR中的相应位。 可通过编程设置操作命令字,实现IMR中的某一位/几位,置1/置0。

(2)特殊屏蔽方式【可以实现低级中断嵌套高级中断】

具体做法——>在当前正在处理的中断服务程序中设:

将8259设为特殊屏蔽方式;用命令字将IMR中相应位置1,由于已设置为特殊屏蔽方式,这种方式会自动使ISR中相应位置0。要在中断服务程序结束时撤消特殊屏蔽方式。

一般用于需要动态改变优先级顺序的时候。

3. 结束中断处理方式

结束中断的原因: 当一个中断请求被响应时,8259会自动将ISR中相应位置1,为此后的中断裁决打下基础。当中断处理结束时,要用一个中断结束命令使ISR中的相应位清0,否则,中断裁决电路会屏蔽比其低级或同级中断请求,即比其低级的中断请求永远不能被响应。因此中断结束时,必须进行一些处理,使ISR中相应位清0。

(1)自动结束方式

在第二个负脉冲时,8259自动将ISR中的相应为置0。 工作在此方式下: ①中断服务程序中不需要中断结束命令EOI。 ②仅用在系统中只有单片8259,没有多个中断嵌套,且下一次中断请求一定在本次中断服务结束后发生。

(2)非自动结束方式

①一般中断结束方式

用于优先级全嵌套方式中。(优先级固定) 当CPU发出中断结束命令时,8259使ISR中优先级最高的那一非零位清0。

②特殊中断结束方式

用于优先级非全嵌套方式中(优先级不固定)。因此用ISR不能确定哪个中断是最后处理的中断。 要求CPU发出一个特殊的中断结束命令来结束中断,在这个特殊的中断结束命令中,要指出所要结束的中断的优先级。 即指出所要清除的ISR中的哪一位。

4. 中断触发方式 (1)电平触发:高电平有效。 (2)边沿触发:上升沿有效。

5. 数据线连接方式 (1)缓冲方式【需经过数据总线驱动器(8286)与系统总线相连】

当使用缓冲方式与系统总线相连时:             #SP/ #EN 是输出端,和8286的允许端相连,用于启动8286。

(2)非缓冲方式【 8259直接与系统总线相连。】

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3