THJAWEN 发表于 2024-2-29 17:17:48

STM32F4 在APP运行时未知原因导致IAP程序被修改,求解。

IAP程序被修改无法运行,导致过程IAP卡死。

已验证该错误发生在APP程序(地址0x08020000)中,仅IAP程序的首地址0x08000000和0x08000004两个数据被改写,且每次复现都是相同的现象(如图),复现概率较低。

!(data/attachment/forum/202402/29/171330a8jj0iqpqwa8wywj.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "image.png")

请问各位大佬,这种诡异情况是如何发生的?我已经摸不着头脑了,按说如果是软件出问题,跑飞了导致Flash数据被人为修改,那也应该是先将整个扇区的数据擦除,很难出现只修改部分数据的情况,再说每次复现的被修改的数据都一模一样,基本可以排除是干扰等因素导致的了。

背影101 发表于 2024-3-6 08:34:36

butterflyspring 发表于 2024-3-6 09:55:47

1. 每次都是同一地址数据,说明规律性很强,很可能与软件强相关。
2. 楼主已经验证发生在APP代码,可以从该处查找。比如屏蔽相关FLASH 的改写代码。
3. 当然,芯片有写保护设置,逻辑上应当保护IAP 部分代码,这只是后面上的一把保险锁而已,
   没有找到原因的一种解决方式。
页: [1]
查看完整版本: STM32F4 在APP运行时未知原因导致IAP程序被修改,求解。