骑着蜗牛狂奔O 发表于 2022-8-9 21:25

FAQ0131 AT32操作擦除 SPIM 必须注意事项说明

Questions:当擦除 SPIM 的操作代码放置在非零等待区(NZW)时,可能导致程序执行异常、 进 hardfault 等错误。

Answer:
原因在于当擦除 SPIM 期间,如果有 cpu read main flash 的操作,会导致该 read 指令被误判断为去读
SPIM,导致该指令数据读错,从而导致程序异常等错误。

解决方法 1:
擦除前先关闭中断,擦除完成后再开启中断,并且将擦除过程的所有代码编译到零等待区执行。

解决方法 2:
擦除前先关闭中断,擦除完成后再开启中断,并且将擦除过程的所有代码编译到 SRAM 执行。

类型:MCU 应用
适用型号:AT32F403、AT32F413、AT32F403A/407
主功能:SPIM
次功能:无
页: [1]
查看完整版本: FAQ0131 AT32操作擦除 SPIM 必须注意事项说明