今天使用STM32G030C8T6单片机做实验的时候发现的问题:
具体细节
使用STM32CubeProgrammer软件,通过UART串口烧写程序,若该单片机从未进行过烧写,第一次烧写程序时,程序能够正常烧入单片机。第二次烧写程序时,则无法通过串口连接单片机进行烧写。查看代码,未占用烧写串口PA13和PA14引脚及boot引脚。在更换同款单片机后依旧出现此问题。排除硬件问题。
解决方法
—连接STM32CubeProgrammer,在第一次对单片机进行烧写前,点击主页面“read”,读取flash。
—选择左边OB按钮 ,在User Configuration中将nboot_sel的勾选去除。
之后进行烧写程序,这样下次烧写程序的时候就不会出现单片机自动进入main flash而非boot导致无法连接的问题了。
参考资料来自:Stm32g031芯片无法进入bootloader的及首次烧写完程序reset无法运行原因分析_howareyou23的博客-CSDN博客