首页 > 代码库 > Cortex-M3基础
Cortex-M3基础
1 寄存器组
R0-R12: 通用寄存器
-----------------------------------------------------------------------------------------
R13: 堆栈寄存器
有两个,MSP和PSP,同时只能看见一个,引用R13时,引用的是正在使用的那个
MSP:可用于异常服务和应用程序
PSP:只能用于应用程序
系统复位后,用的堆栈指针是MSP。
------------------------------------------------------------------------------------------
R14: 连接寄存器,又名LR,存储返回地址
R15: 程序计数寄存器,又名PC
-------------------------------------------------------------------------------------------
3.2 特殊功能寄存器
程序状态字寄存器组(PSRs)
中断屏蔽寄存器组(PRIMASK, FAULTMASK, BASEPRI)
控制寄存器(CONTROL) *****☆
程序状态字寄存器组(PSRs)分为
应用程序 PSR(APSR)
中断号 PSR(IPSR)
执行 PSR(EPSR)
每个都是32位,由于这3个寄存器有效位是错开的,因此可以组合访问。
中断屏蔽寄存器组(PRIMASK, FAULTMASK, BASEPRI) ,这三个寄存器用于控制异常的使能和除能。
----------------------------------------------------------------------------------------
控制寄存器(CONTROL)它有两个作用:
1.定义特权级别
2.选择当前使用哪个堆栈指针
3.3 操作模式和特权极别
操作模式: 处理者模式和线程模式
异常处理:处理者模式
主程序:线程模式
Cortex-M3基础