基础知识
寄存器
-
Cortex-M 系列 CPU 的寄存器组里有 R0~R15 共 16 个通用寄存器组和若干特殊功能寄存器
-
通用寄存器组里的 R13 作为堆栈指针寄存器 (Stack Pointer,SP);
-
R14 作为连接寄存器 (Link Register,LR),用于在调用子程序时,存储返回地址;
-
R15 作为程序计数器 (Program Counter,PC),其中堆栈指针寄存器可以是主堆栈指针(MSP),也可以是进程堆栈指针(PSP)
-
中断屏蔽寄存器组控制 Cortex-M 的中断除能。
-
控制寄存器用来定义特权级别和当前使用哪个堆栈指针

-
进入异常或中断处理则进入处理模式,其他情况则为线程模式
-
处理模式总是使用 MSP 作为堆栈,线程模式可以选择使用 MSP 或 PSP 作为堆栈,同样通过 CONTROL 特殊寄存器控制。
-
复位后,Cortex-M 默认进入线程模式、特权级、使用 MSP 堆栈。
本文介绍了Cortex-M处理器的中断管理机制,包括寄存器、嵌套向量中断控制器和PendSV系统调用。详细阐述了RT-Thread操作系统中断处理过程,包括中断前导、用户服务程序和后续程序,并讨论了中断嵌套、中断栈和底半处理的概念。此外,还介绍了RT-Thread的中断管理接口,如中断服务程序挂接、中断源管理和全局中断开关。
订阅专栏 解锁全文
541

被折叠的 条评论
为什么被折叠?



