STM32 无法烧录

1. 一直显示芯片没连接上,检查连线也没问题,换了个ST-Link 烧录器还是连不上,然后又拿这个烧录器去其它板子上试下,就可以连接上,说明我连线没问题,烧录器也没问题,驱动什么的更是没问题,keil 配置也没问题的,直接排除法,定位问题就出个这块板子上了,准确说,就是这个块芯片的问题

STM32 无法烧录_第1张图片

2. 试了网上说的改变boot0 和boot1 的配置,从内存启动

STM32 无法烧录_第2张图片

3. 配置boot0 = 1, boot1 = 0,boot0 引脚拿根线接到3.3V 上,boot1 拿根线焊到 GND 上,确实又显示连接上了,然后烧录程序后,断电,再把boot0 的线去掉,接到GND, 程序会从flash 启动,然后再重新上电,又显示没有连接上了,可能有的人这样操作一次会成功,但是我的不行

STM32 无法烧录_第3张图片

4. reset 复位引脚接到地,一直接低电平,就会显示连接上了,拿根线焊到地,然后烧完程序后再把线去掉

STM32 无法烧录_第4张图片

5. 这个时候还是不稳定的,有时候能连上,有时候连不上,打开STM32 专门的烧录软件

STM32 无法烧录_第5张图片

6. 用这个软件连接芯片,如果keil 里面显示连不上,这个软件也会连不上,所以要在reset 复位引脚一直接地的时候,然后keil 显示连上了,再用这个软件来连接

STM32 无法烧录_第6张图片

7. 擦除Flash,将整个Flash 都擦干净,比厕所还干净,这样连接就会稳定了,连不上就复位,复位,重启大法能解决所有问题,所有

STM32 无法烧录_第7张图片

8. 擦除后Flash 里面都是0x00 了,有的Flash 里面会全是0xFF,所以我的不需要 改boot0, boot1,复位就行,我就是本来好好的,有一次,烧了一次后突然就被锁死了,不知道为什么

STM32 无法烧录_第8张图片

9. 还有的人要去设置,字节选项,反正我弄了没有用

STM32 无法烧录_第9张图片

10. 关掉Flash 读保护,你们可以试试,我试了没多大用,我的问题应该也不是SWDIO 线占用的问题,SWJ 占用什么的,我没有用HAL 哭,用的标准外设库

STM32 无法烧录_第10张图片

11. 全擦Flash 后,再烧一次程序,里面就有数据了,可能是那次烧录的时候电源出问题了,导致烧录中断出现异常,然后就锁死了吧

STM32 无法烧录_第11张图片

12. 总之一句话,复位,复位,重启,重启,复位不会的话就放弃治疗吧,改行吧,兄弟(悄悄告诉你,有度娘,也有我,还有ChatGPT)

你可能感兴趣的:(stm32,嵌入式硬件,单片机)