ARM9中断原理

一:CPU工作模式
ARM CPU分为7种工作模式,每个模式下都有一组寄存器对应,每种模式下有至少17个寄存器相对应
在中断中出栈入栈时只需要保存R0-R12及R14,R13为SP,R14为LR(链接寄存器),R15为PC
二:中断处理流程


 如图所示当request source(with sub register)中断发生时,SUBSRCPND相应位置1,如果没有被SUBMASK屏蔽,SRCPND相应位也被置1,如果此时没有被MASK屏蔽或者没有被设为快速中断时,就进入优先级仲裁,多个中断源中选出优先级最高的中断,并在INTPEND相应位置1,然后CPU进入中断处理程序。
多个中断源中,只有一个中断能被设为快速中断。
三:中断优先级
优先级分为两种,固定优先级和自动变化优先级,在固定优先级下,通过设定ARB_SEL来设定优先级顺序,在自动变化优先级下,当其中的某个中断被服务时,ARB_SEL会自动变化,来改变优先级顺序。
 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值