首页 > 代码库 > Cortex-M3寄存器等基础知识

Cortex-M3寄存器等基础知识

1.寄存器

  CM3拥有R0~R15通用寄存器和一些特殊功能寄存器

  R0~R12这些通用寄存器,复位初始值都是不可预料的

2.CM3有R0到R15的通用寄存器组

注:绝大部分的16位thumb只能访问R0到R7,而32位thumb-2可以访问全部寄存器

3.特殊功能寄存器

 3.1程序状态寄存器组(应用程序PSR+中断号PSR+执行PSR)

 3.2中断屏蔽寄存器组:用于控制异常的除能和使能

3.3控制寄存器:用于定义特权级别和当前使用哪个堆栈指针

4.操作模式和特权级别:

两种操作模式:Handler模式和线程模式(用于区分异常服务例程的代码和普通程序的代码)

两种特权的分级:特权级和用户级(是指在硬件层面上对存储器访问权限的设置)

注:CM3在运行主程序(即线程模式)可以使用特权级别和用户级别;但是异常服务例程(即handler模式)只能使用特权级别,一下是各操作模式的转换

Cortex-M3寄存器等基础知识