S3C 2440 中断控制器的学习

记住下面的图可以很好的理解中断从产生到得到处理的流程,可以很好的记住相关的寄存器
 
流程:1。中断源产生:可能是内部外围设备产生的中断也可能是引脚产生的终端
           2。此时SRCPND或者SUBSRCPND寄存器相应的位置“1"
           3。然后经过模式寄存器INTMOD,看其是IRQ 还是FIQ,如果是FIQ直接进行FIQ请求(注意:在INTMOD中 只有个一个中断时IFQ形式的)
               如果是IRQ则执行下面的步骤:
           4。经过INTMASK,如果对应的MASK位为1,则该中断不会继续往下进行,但是SCRPND相关的位仍然为1,其不会受到MASK的影响
           5。然后经过优先级寄存器PRIORITY,把优先级最高的那个中断传下去。
           6。 相应的INTPEND寄存器位置1,申请中断请求。
 
注意:①还有一个寄存器:INTOFFSET 其中存放0~31中第一个数字,表明是具体哪个中断请求。
          ②优先级寄存器 具有两级仲裁器,第一级有6个仲裁器,第二级有1个仲裁器。如下图所示;
        
          
其中在一个仲裁器中 REQ0优先级始终最高,REQ5的优先级始终最低,其他四个优先级根据模式设置决定是优先级轮流还是优先级固定
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值