對于其他的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
審核編輯:湯梓紅
-
FlaSh
+關注
關注
10文章
1635瀏覽量
148028 -
cpu
+關注
關注
68文章
10863瀏覽量
211765 -
STM32
+關注
關注
2270文章
10900瀏覽量
356012 -
程序
+關注
關注
117文章
3787瀏覽量
81044 -
Jlink
+關注
關注
6文章
111瀏覽量
37695
原文標題:STM32無法連接JLink(Flash讀寫保護) 解決方法
文章出處:【微信號:嵌入式那些事,微信公眾號:嵌入式那些事】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論