CPU:STM32F429IGT6
对于其他的stm32芯片或者其他ARM芯片,其实解决方法都相通,主要就是先修改启动方式,再去更改flash或者ram中的程序。
1.问题出现原因
最近在调试一个程序时,始终调试不通,没办法了,就想着参考网上的例程来看看,结果下载的stm32工程可能和板子的硬件不太一样导致stm32 flash读写保护,此后使用JLink再也无法连接上stm32了,Keil中也没办法识别出设备:
Snipaste_2020-12-10_10-37-11
2.解决方法
首先,修改stm32的启动方式,我的板子默认设置的是从内部flash启动,这里要解决stm32的读写保护就不能选择从内部flash启动了。修改启动方式为:从系统存储器启动(也就是BOOT0接VCC,BOOT1接GND),下图是stm32f429对应的启动方式配置表:
Snipaste_2020-12-10_10-43-06
然后重新给板子上电,打开一个好的工程(能够在板子上正常运行的程序),此时Keil能够识别出设备了,然后重新下载程序到板子就OK了,程序下载完成之后,切换启动方式到原来的启动方式即可。
Snipaste_2020-12-10_10-50-07
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !