通过 R寄存器和系统变量 定位异常
- 前言
- R寄存器
- 举例
- 上下文变量
- 瑞莎U2A8的控制寄存器
- VECTOR的OS实现Context记录
- Context原型
- 异常时Context的记录
- 总结
前言
单片机开发大部分属于C开发,因C开发的灵活性,经常导致系统内存被踩(比如:数组越界),操作异常(非对齐地址的操作:对非4字节对齐地址进行32bit赋值操作)。
这些异常问题,基本藏得很深,配查难度打,所以,我们必须要采用一套便于我们分析的方法,来辅助我们分析异常问题。
基于上述迫切需求,我们发现单片机基本是ARM内核,ARM内核工作时有哪些寄存器供我们使用呢?带着这些疑问我们开始接下来的分析。
R寄存器
瑞莎U2A8和常规单片机一样,他属于ARM系列,R寄存器则是内核执行PC指令是所暂存的状态寄存器。
平时我们使用时,所关心的