利用STM32CubeMX配置了一个工程,下载到芯片后,芯片能够正常工作,但是在第二次通过SWD却怎么都连接不上芯片,偶尔按住复位键能够连接上芯片,但是无法读取也无法擦除flash。找了一些资料后才知道是由于STM32CubeMX没有配置好,导致芯片锁死。
现象:
报错:error failed to erase memory stm32
无法读取也无法擦除flash:
原因:
在配置STM32CubeMX时,sys设置中,选择了Disable才导致了芯片被锁死,需要配置成serial debug(由于之前用的是103,没有这个设置,所以一直没注意到)。
解锁方法:
1、一直按住复位键,强制给芯片擦除flash并烧录一个正常的固件。(多次强行操作会导致芯片彻底坏死,我的芯片就是被我这样给弄坏了)
2、boot0和boot1都接高电平,然后给芯片擦除flash并烧录一个正常的固件,boot0和boot1都恢复正常的工作状态即可。