STM32筆記(4)ST-LINK調試介紹

調試相關介紹

調試原理:STM32F10xxx使用的Cortex-M3內核含硬件調試模塊,允許內核在取消(指令短點)或訪問數據(數據斷點)時停止,並可以查詢內核的內部狀態和系統的外部狀態,完成查詢後,內核與外設可以被複原,程序也可以繼續執行。

JTAG(Joint Test Action Group,聯合測試工作組)是一種國際標準測試協議(IEEE 1149.1兼容),主要用於芯片內部測試。標準的JTAG接口是4線:TMS、TCK、TDI、TDO,分別爲模式選擇、時鐘、數據輸入和數據輸出線。(20個引腳)

具有JTAG口的芯片都有如下JTAG引腳定義:
TCK——測試時鐘輸入;
TDI——測試數據輸入,數據通過TDI輸入JTAG口;
TDO——測試數據輸出,數據通過TDO從JTAG口輸出;
TMS——測試模式選擇,TMS用來設置JTAG口處於某種特定的測試模式。

SWD(serial wire debug,串行調試),與JATG區別的另一種調試方式。標準接口爲雙線,有四到五個引腳。下圖中,雙線接SWDIO,SWCLK即是SWD的接線方式。(或者通過引腳接SWDIO,SWCLK,VCC,GND,最多再接一個復位引腳RST)

以上兩種調試方法比較
1)SWD模式比JTAG在高速模式下更加可靠,在大數據量的情況下JTAG下載程序會失敗,但是SWD發生的機率會小很多,基本使用JTAG的模式下可以直接使用SWD模式的,前提是仿真器支持。
2)在GPIO口剛好缺一個的時候,可使用SWD仿真,這種模式支持更少的引腳;
3)在PCB設計體積有限的時候推薦使用SWD模式。

標準 20 針 JTAG/SWD 接口電路 (基於正點原子精英開發板)

在這裏插入圖片描述
相關調試端口腳:
在這裏插入圖片描述

keil5中使用ST-LINK調試(SWD模式)

1.安裝 ST-LINK 的驅動 ,用相應USB線將設備,ST-LINK,開發板連接,並用灰排線連接 ST-LINK 和開發板的 JTAG接口。(JTAG和SWD兩種調試是共用接口)
2.打開需要調試的工程,點擊魔術棒 ,打開 Options for Target 選項卡,在 Debug 欄選擇仿真工具爲 ST-Link Debugger,並勾選 Run to main() 。
在這裏插入圖片描述
3.點擊Settings,來設置 ST-LINK 的一些參數 ,選擇SW 模式。 Max Clock 設置爲最大的4MHz。

在這裏插入圖片描述
4.在 Utilities 選項卡里面設置下載時的目標編程器
在這裏插入圖片描述
5.後點擊 Settings, 進入 FLASH 算法設置 ,選中 Reset and Run 選項

在這裏插入圖片描述
6.之後經過編譯再點擊keil中的LOAD按鈕,程序即可下載。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章