由于MRC2拆卸而导致STM32F101RF出现硬故障?

时间:2020-04-21 15:08:57

标签: arm cortex-m iar cortex-m3

我有一个引导加载程序代码,其中我将通过USART发送/接收数据。我已将USART配置为以中断模式运行。

USART功能可以独立正常运行。使用多个读/写实例对此进行了验证。

当我将USART代码与引导加载程序代码集成在一起时,引导加载程序将继续检查是否有任何待读取的数据要从USART读取。

如果有任何待处理数据,则引导加载程序将读取数据寄存器(DR)中已通过中断接收的数据。 (轮询+中断的一种)

我的问题:

每当有USART接收中断被触发时,内部接收中断服务程序中就会发生硬故障错误。

PC表示其内部硬故障例程,可从DR中读取数据。

但是我看到的一件奇怪的事是,在发生严重故障的位置,在反汇编中,我仅看到MRC2命令enter image description here

是因为这个问题发生了吗? 0x8004802是我的硬盘驱动器命中的位置。

请给我启发

1 个答案:

答案 0 :(得分:1)

看看原始的十六进制值:从可疑地址data.frame开始始终是0xFF,这肯定是页面边界。

换句话说:闪存损坏或被擦除且未完全写入。验证闪存程序(引导程序)应该失败。

如果这是您的引导加载程序代码中的内容,则可能是它试图覆盖自身-或只是擦除了错误的内存页面。

相关问题