環境:工具
目標CPU:STM32F429debug
鏈接工具:JLink V9調試
鏈接方式:SWOorm
調試工具:Keil MDK 5.20接口
使用場景:圖片
目標板正在運行,可是出BUG了,須要調試,而當前又沒有在線debug,源碼
因而就須要用調試器在不復位CPU的前提下附着到正在運行的板子上.it
使用步驟:io
1.首先確認你有與當前CPU運行的程序同樣的源碼,編譯時生成了調試信息(Debug Information).編譯
2.修改debug設置,去掉"Load Appcalition at Startup"的勾選.
3.檢查JLink的設置,"Connect:Normal"表示正常鏈接,不復位,"Reset:Normal" 表示鏈接後不復位,不勾選"Reset after Conn",不勾選"Download to Flash"
4.將JLink鏈接至目標板的調試接口.
5.點擊Keil中的調試按鈕,啓動調試.前面的設置正確的話CPU會中止運行,但不會復位,此時只能看彙編指令,沒有C源碼.
6.在Command窗口輸入命令:LOAD %L INCREMENTAL(這條命令是加載當前項目的輸出文件,讀取調試信息,這樣就能夠看到C源碼了).
7.如今就和正常調試同樣了.
備註:
第6步還有另外一種方式自動加載,在"Debug"設置對話框裏填入一個"Initialization File:",
在該文件裏面寫上"LOAD %L INCREMENTAL",就能夠了,點擊"開始調試"後,Keil會自動執行該命令.
參考圖片: