关于嵌入式中断的一点理解

这里简要介绍下嵌套中断

arm9有两种中断模式,中断和快速中断

在中断时可发生快速中断,只有这一中嵌套中断,其余没有

多中断源同时发生中断时会通过各种寄存器的仲裁最后只有一种中断会响应

中断的处理过程发生在svc管理模式下,我个人认为这是在为嵌套中断做准备,即响应有可能发生的快速中断

中断发生的过程是这样的:

当发生中断时切换到中断模式,在中断模式下把前一个状态的返回地址和状态寄存器的值保存在中断模式下的堆栈中,把中断模式下的栈寄存器保存到一个通用寄存器中(这是为了把刚才保存在中断模式栈中的内容保存到svc模式下)

切换到svc模式下,在该状态下保存刚才在中断模式下堆栈中保存的内容,便于直接返回到中断前的状态,在svc管理模式下进行中断的处理操作

posted on 2013-03-21 16:25  追寻前人的脚步  阅读(415)  评论(0编辑  收藏  举报

导航