相信小伙伴們都會遇到這樣的場景:芯片程序跑著跑著就異常了,這個時候又不能仿真,因為一旦仿真程序就會重新download,異常現象就消失了。現在就來教大家如何使用Jlink仿真器去查看GD32芯片跑飛后程序死在哪里。
首先,我們需要將目標板和Jlink進行連接,只需要接三根線:SWDIO(PA13)、SWCLK(PA14)和GND,切記,一定不能接NRST腳,否則連接的時候就可能把芯片復位了,當然,也一定要保證連接過程中芯片不要斷電。
然后在Jlink驅動安裝目錄中找到Jlink.exe,雙擊打開:

打開后是這個界面:

鍵盤輸入:usb,點擊回車:

提示連接到Jlink,然后輸入:s,并回車

這里會有一個默認芯片型號,如果和目標板上的型號不一致可以輸入:?,并回車,如果一致則直接回車。
因為小編用的是GD32F303ZGT6,所以輸入了“?”,將會彈出選擇芯片的列表,找到目標芯片并雙擊:

回到Jlink.exe界面:

因為我們是用SWD接口,所以輸入:s,并回車:

這里會讓你選擇Jlink的通信速度,默認是4000KHz,如果你的目標板和Jlink之間的線比較長的話,可以適當降低速度,比如需要1000KHz,則鍵盤輸入:1000,并回車,將會出現下面這個界面:

我們看到紅色框線內已經提示找到芯片ID了,這時候在輸入:h,并回車,將看到以下界面:

紅色方框內的PC值就代表了程序當前執行的位置,我們可以通過查看程序工程中的map文件,就可以找到程序正在運行哪個函數了,如小編這里的PC值是0x08000AAA,map文件中符合這個地址的是delay_1ms函數。

是不是特別簡單?
以后小編還會教大家如何通過Jlink.exe來進行芯片的調試,敬請期待哦。
-
單片機
+關注
關注
6043文章
44621瀏覽量
638570 -
Jlink
+關注
關注
6文章
111瀏覽量
37799 -
GD32
+關注
關注
7文章
413瀏覽量
24471
發布評論請先 登錄
相關推薦

GD32和STM32的區別在哪
什么是GD32
JFlash解除GD32讀保護的方法
GD32芯片包添加步驟有哪些
GD32F系列單片機開發總結(二):GD32芯片包添加步驟

評論