问题描述:
使用STM32CubeMX配置工程,下载了一次程序,再次下载程序就会报错,如下图所示:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3c19e15331a841dcb2c706d25a7d3bc7.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5q2l6L-b55S15py6MA==,size_12,color_FFFFFF,t_70,g_se,x_16#pic_center)
![在这里插入图片描述](https://img-blog.csdnimg.cn/36feb0aae92d465dbea1436c71f74a5d.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5q2l6L-b55S15py6MA==,size_19,color_FFFFFF,t_70,g_se,x_16#pic_center)
原因分析:
使用STM32CubeMX配置工程时,CubeMX默认会把调试引脚关闭,如果不进行配置就会出现下载报错,不能下载程序。
![默认设置](https://img-blog.csdnimg.cn/d1c08f29f2c847ecaacdae7c57b2b432.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5q2l6L-b55S15py6MA==,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
解决方案:
将BOOT0置高,使程序从系统存储器启动,重新往Flash中下载一个正常的代码,之后再换回Flash启动,芯片即可完成解锁。
1.板子上电前将BOOT0引脚接到3.3V高电平
2.板子上电
3.重新烧录程序
4.BOOT0接到GND
5.下次记得配置SYS-Debug,这里我是配置为serial wire
![SYS-Debug配置](https://img-blog.csdnimg.cn/4f9ad0633824465196693067d8b2a551.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5q2l6L-b55S15py6MA==,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)