今天分享一个在调用RTT设备时遇到的错误。
首先要知道从打印上来看这个错误是属于cpu错误。
在rt-thread的cpu架构里,不同的cpu异常会有不同的异常号,我们往往需要通过异常号来判断可能出现的问题。
异常号 | 说明 |
0 | 重启异常 |
1 | 未对齐访问异常 |
2 | 访问错误异常 |
3 | 除以零异常 |
4 | 非法指令异常 |
5 | 特权违反异常 |
6 | 跟踪异常 |
7 | 断点异常,地址观测异常 |
8 | 不可恢复错误异常 |
从这可以看出这个异常为特权违反。
在RTT(RT-Thread)中,特权违反,回顾之前写的代码,发现是自己在应用层注册了spi设备,编译虽然通过了,但是在进行打印调试的时候,导致运行失败。
通过修改,发现果然是这个原因。故此分享一下。