记得前面有篇文章介绍了终端的实现等,现在我们在了解一下,中断的种类:
中断分为不同的种类:
一、状态触发:
在状态中断系统中,一个等待响应的中断会在中断请求路线上以特定的电平标识,如高电平(1)或低电平(0)。当一个设备希望发送中断请求信号时,他的驱动中断请求线路至响应的电平,并在CPU发出强制停止命令或处理所请求的中断时间之前始终保持。
该中断模式在共享中断中存在一个严重的问题:
只要还有任何设备的中断请求还未被处理,线路就会一直保持有效电平状态,而将导致CPU没有机会去探查其他设备所发生的状态变化。
二、边沿触发:
在边沿触发的中断系统中,中断设备通过向中端线路发送一个脉冲来表示其中断请求。脉冲可以为上升沿或下降沿。在发送完脉冲后设备立即释放中断线路,如果这个脉冲太短,以至于I/O轮询不足以确保知悉其存在,则有必要使用专门的硬件设备来辅助队边沿触发的探查。
这个中断模式就不会存在状态触发那种问题,该中断一经被触发就会立即释放,所以又会引入另一个问题,就是边沿触发的中断很容易丢失,特别是当中断被有意屏蔽时。
三、混合模式:
即状态触发和边沿触发兼顾的混合中断模式。
所以,我们在申请中断的时候,要对该硬件中断进行评估,该中断是不是很频繁,如果该中断触发的很频繁尽量用电平触发的方式,防止丢失中断;
不过这个还要结合该硬件的datasheet。
浙公网安备 33010602011771号