最近一款STM32F0的產品打樣,燒錄不正常,串口可以但SWD不行,反復確認后最終解決問題,附件(內有示例圖片參考)心得為大家參考。
先說說問題現象:
1.出現檢測不到目標板;
2.按復位鍵檢測到后用SWD下載顯示檫除失敗,超時。
3.燒錄到一半出現內部指令錯誤。
總結如下:
1. 如果出現不能燒錄,將BOOT0 接3.3V。先用“FlyMcu”串口連接后,點“清除芯片”將Flash檫除。 2. 按正確的接線方式連接好“SWD”接口:SWDIO ,SWCLK ,GND。 3. 為了BOOT0可靠接地,直接將BOOT0 接地。 4. 目標板上電,按一下復位按鈕。(如果需要按住復位按鈕才能檢測到目標板說明電路存在缺陷,比如SWCLK受其他共用電路影響) 5. 在keill –Debuge-setings下檢查目標板是否連接OK。 6. 點 download 將程序下載到Flash。(1-6步驟是解決燒錄檫除程序超時的問題,或SWD不能下載程序。) 7. 如果出現目標板檢測不到先檢查接線是否正確, 8.如果用SWD燒錄過程中出錯一般要檢查3.3V是否OK,紋波大或不穩定。SWDIO,SWCLK引腳是否共用其他電路造成信號不穩定燒錄失敗,這點很重要。
|