Error:Flash Download failed -“Cortex-M3”和Error:Flash Timeout.Reset the Target and try it aga异常通常解决办法
Keil5进行烧录时download失败并且提示Error:Flash Timeout.Reset the Target and try it again.又提示Error:Flash Download failed -“Cortex-M3”的原因和解决办法
问题描述
刚刚上手STM32不久遇到一个烧录问题
使用HAL固件库编程了一个LED闪烁程序,成功烧录以后更改了程序要重新烧录,编译不报错但是download失败并且提示Error:Flash Timeout.Reset the Target and try it again.又提示Error:Flash Download failed -“Cortex-M3”。
这种情况一般是因为STM32的Boot引脚设置成了BOOT0和BOOT1均为低电平0,而boot0管脚拉高或拉低都不能从系统存储区(system flash)启动(即进入bootloader状态)。芯片刚开始启动会检查main flash区有没有代码,要是0x08000000没有代码,就进入bootloader状态,要是有代码就从main flash区运行。所以在烧录一次并运行程序以后,芯片检测到主闪存区已经存在代码,就自动从main flash区运行,此时不允许FLASH区进行更改download失败。
解决办法
(1)点击Keil5左上角的“FLASH”选型,再点击“Erase”使用Full Erase等待一段时间擦除主闪存区,即可继续烧录
(2)DAP下载器配置更新成如下状态即可正常直接Download,不需要点击“Erase”使用Full Erase等待一段时间擦除主闪存区,推荐使用第二种方法
如描述有误烦请各位大佬指教,谢谢。
参考文章Stm32g031芯片无法进入bootloader的及首次烧写完程序reset无法运行原因分析_-ob nboot_sel=0-CSDN博客
更多推荐
所有评论(0)