当前位置:   article > 正文

STM32读取Flash出现乱码,重新刷入进入HardFault_stm32 外部flash 辐射传到数据错乱

stm32 外部flash 辐射传到数据错乱

问题描述
之前是在Flash中写入了一些参数,读取一直是正常的,但是今天修改了一些程序后再次刷入程序,跑的时候却发现写在Flash中的参数崩了。
解决方案
Debug观察Flash中的数据,发现在写参数的扇区中的数据变成了乱码,怀疑是刷入了程序,于是检查了程序的大小对比当前Flash的地址,发现果然是程序的大小超过了写参数的Flash地址的大小。

这里写图片描述
程序总大小 (129520+7152+836+23356)/1024=157KB
这里写图片描述
参数写在扇区5 5个扇区总大小 16+16+16+16+64=128KB<157KB
因此 刷的程序与写参数的内存地址产生了冲突导致出现问题,而不进行修改直接强行刷参数会导致刷进去的程序被强行修改,从而进入HardFault

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/302259
推荐阅读
相关标签
  

闽ICP备14008679号