ARM的中断系统
时间:10-02
整理:3721RD
点击:
ARM的中断系统可分为5个步骤:1.初始化:
端口设置
FIQ、IRQ开关:PSR的F(IQ)、I(RQ)位进行设置。1表示禁止,0表示允许。
屏蔽中断源:INTMAST寄存器的读写,其中1为禁止,0为允许。
2.产生中断请求:
中断源发出请求,INTPND中相应位被置为1.
3.识别中断源:
先识别FIQ,再识别IRQ。
之后主优先级寄存器,从优先级寄存器。
4.转入中断服务程序:
A.中断向量表:从ROM读表,从RAM读表。
B.向量中断,自动根据转移指令转移指针。
C.非向量中断,进入后再用程序自行判断。
5.跳回被中断程序:
I_ISPC F_ISPC写1清0,跳回原程序
端口设置
FIQ、IRQ开关:PSR的F(IQ)、I(RQ)位进行设置。1表示禁止,0表示允许。
屏蔽中断源:INTMAST寄存器的读写,其中1为禁止,0为允许。
2.产生中断请求:
中断源发出请求,INTPND中相应位被置为1.
3.识别中断源:
先识别FIQ,再识别IRQ。
之后主优先级寄存器,从优先级寄存器。
4.转入中断服务程序:
A.中断向量表:从ROM读表,从RAM读表。
B.向量中断,自动根据转移指令转移指针。
C.非向量中断,进入后再用程序自行判断。
5.跳回被中断程序:
I_ISPC F_ISPC写1清0,跳回原程序