DIY编程器网
标题:
ARM中断处理类型
[打印本页]
作者:
liyf
时间:
2012-1-16 18:42
标题:
ARM中断处理类型
在正常的程序执行流程发生暂时的停止时,称为中断,例如,处理一个外部的中断请求。在处理异常之前,当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。
中断与堆栈设置和ARM体系结构紧密相关,ARM是一种支持多任务操作的系统内核,内部结构完全适应多任务应用。ARM内核支持7种中断,不同的中断处于不同的处理模式(如表1所示),具有不同的优先级,而且每个中断都有固定的中断入口地址。当一个中断发生时,相应的R14(LR)存储中断返回地址,SPSR存储状态寄存器CPSR的值。
由于ARM内核支持流水线工作,LR寄存器存储的地址可能是发生中断处后面指令的地址,所以不同的中断处理完成后,必须将LR寄存器值经过处理后再写入R15(PC)寄存器。
表1 ARM的7种中断
续表
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
欢迎光临 DIY编程器网 (http://diybcq.com/)
Powered by Discuz! X3.2