码迷,mamicode.com
首页 > 其他好文 > 详细

35 操作系统-中断代理-8295A

时间:2021-03-09 13:47:42      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:中断控制   电平触发   相关   交互   过多   img   工作方式   产生   数据   

 

参考

https://blog.51cto.com/13475106/category6.html及狄泰软件相关课程

 

Q:不同外设如何下个处理器发送中断信号?当多个外设同时产生中断时,如何进行处理?
已知可以通过引脚与外设相连,但是实际上外设过多,同时产生中断,会产生错误,同时高速的CPU与低速的外设相连也是不符合实际的。这时需要一个中间代理来处理中断-8259A(两者之间的交互变简单)
技术图片

一.8259A-可编程中断控制器

1.可通过编程对8259A进行功能设置
2.屏蔽外设中断,对中断进行优先级判决
3.向处理器通过中断向量
技术图片
过程为:当一个外设与8259A相接时,首先会通过中断屏蔽寄存器(8个字节),在这里进行配置屏蔽(为0时放行,1时屏蔽),剩下的中断会进入中断请求寄存器,接下来通过INT引脚通知处理器,处理器进行应答,接下来会会通过PR优先判别,最后通过ISP对其寄存器进行处理(置1),最后处理器通过中断服务程序对外设进行处理,结束之后会在ISP将其置0.
技术图片技术图片
8259A工作方式

a.中断触发方式

1.边沿触发-中断引脚电平变化的一瞬间认为中断申请到来(上升沿触发)
2.电平触发-中断引脚上的信号保持稳点电平一定时间后认为中断申请到来

b.数据连接方式

1.非缓存方式-将8259A直接与数据总线相连
2.缓冲方式-将8259A通过总线驱动器和数据总线相连

c.中断优先方式

1.固定优先级方式-优先级由高到低(这样会使得最低位的中断永远不会实现)
2.自动循环方式-某一中断请求被响应后,该中断源优先级自动为最低
3.特殊循环方式-通过编程指点其中断源优先级称为最低,其他中断源优先级自动改变

d.中断嵌套方式

1.完全嵌套方式(默认)-执行中断服务程序期间,不响应本级中断和较低级中断
2.特殊完全嵌套方式-执行中断服务程序期间,可响应本级中断,不想要较低级中断

e.中断屏蔽方式

1.普通屏蔽方式-将IMR中的某一位置为1,屏蔽掉相应级别的中断请求
2.特殊屏蔽方式-未被屏蔽的中断源均可在某个中断服务程序中相应,即低优先级中断可以打断正在服务的高优先级中断

f.中断结束方式

1.自动结束方式(适用于非多重中断的情况)-8259A自动清除ISR中已制位的优先级最高的位
2.手动结束方式-在中断服务程序的最后,向8259A发中断结束命令,将ISR中相应的位清除,表明中断服务程序已完成

35 操作系统-中断代理-8295A

标签:中断控制   电平触发   相关   交互   过多   img   工作方式   产生   数据   

原文地址:https://www.cnblogs.com/lh03061238/p/14503601.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!