ARM内核IMPRECISERR硬件异常

今天在调试代码时,发现注释掉某些初始化部分就会导致HardFault,查看相关寄存器发现是BusFault的IMPRECISERR引起的,在ARM的手册中是这么描述这个东西的:

a data bus error has occurred, but the return address in the stack frame is not related to the instruction that caused the error. When the processor sets this bit, it does not write a fault address to SCB->BFAR. This is an asynchronous fault.

但是说了半天我也没懂这是个啥东西。在硬汉嵌入式论坛中有一个这样的错误,但是显然这不是这个原因引起的。随后查看堆栈,发现是在SysTick中断中调用了一个没有初始的函数,才导致了这个问题的产生。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇