GD32系列MCU支持SWD和JTAG(部分型號(hào)不支持)接口進(jìn)行下載調(diào)試,這些功能通過(guò)ARM CoreSight組件的標(biāo)準(zhǔn)配置和鏈狀連接的TAP控制器來(lái)實(shí)現(xiàn)的。調(diào)試和跟蹤功能集成在ARM Cortex-M內(nèi)核中。調(diào)試系統(tǒng)支持串行(SW)調(diào)試和跟蹤功能,部分型號(hào)也支持JTAG調(diào)試。調(diào)試和跟蹤功能具體請(qǐng)參考下列文檔:
Cortex-M4技術(shù)參考手冊(cè);
ARM調(diào)試接口V5結(jié)構(gòu)規(guī)范。
目前GD32 MCU主要支持的調(diào)試下載設(shè)備有:J-linkV8/V9、U-link、標(biāo)準(zhǔn)的CMSIS-DAP調(diào)試工具如GD-link。SWD/JTAG的優(yōu)勢(shì)在于及下載和調(diào)試功能一體,可直接在集成開發(fā)環(huán)境IDE(如MDK、IAR)中進(jìn)行下載和在線仿真。同時(shí)還有豐富的下載以及調(diào)試上位機(jī),如J-flash和GD-link Programmer工具。J-flash可使用6.3版本及以上可選擇GD MCU型號(hào),也可在網(wǎng)盤->共享文件夾->軟件中下載綠色版J-flash。GD-link Programmer請(qǐng)使用官網(wǎng)發(fā)布的最新版本。
注意:M23內(nèi)核型號(hào)的E23x系列僅支持J-linkV9、U-link2、GD-link。
2.1 SWD/JTAG引腳定義
同時(shí)支持SWD/JTAG的系列有GD32A50x、GD32C10x、GD32C11x、GD32F10x、GD32F20x、GD32F30x、GD32F4xx、GD32E10x、GD32E11x、GD32E50x、GD32FFPR,僅支持SWD的系列為:GD32L23x、GD32F1x0、GD32F3x0、GD32E23x,僅支持JTAG的系列為GD32VF103。 SWD/JTAG調(diào)試下載引腳定義如下表所示,GD32A50x引腳不同于以下定義,請(qǐng)參考用戶手冊(cè)。

2.2 SWD/JTAG燒錄軟件
J-link燒錄需使用J-flash上位機(jī),Jflash6.2版本及以上可選擇到GD MCU型號(hào)。J-flash支持擦除、燒錄、讀取Flash、讀保護(hù)、去讀保護(hù)等操作。同時(shí)使用J-flash還可以進(jìn)行Bin文件的截取、合并等操作。 GD-link燒錄需使用GD-link Programmer,可支持擦除、燒錄、讀取、讀保護(hù)、去讀保護(hù)等功能,同時(shí)還可以將Bin裝載到GD-link中實(shí)現(xiàn)脫機(jī)離線燒錄功能,離線燒錄在第4章節(jié)會(huì)詳細(xì)介紹。
2.3 SWD/JTAG下載電路
SWD/JTAG下載電路如下圖所示,如使用4線的SWD下載方式保留下圖中SWDIO(PA13)、SWDCLK(PA14)、VCC、GND即可。注意:SWD/JTAG下載模式需要BOOT0拉低為正常的Flash啟動(dòng)模式。

2.4 Jlink仿真器接口
Jlink仿真器是標(biāo)準(zhǔn)的Jtag接口,同時(shí)支持Jtag/SWD模式下載,其中除調(diào)試信號(hào)線外,還有Reset、VCCvref(Pin1)、VCCoutput(Pin2)引腳、GND引腳,引腳定義如下表所示。使用SWD模式下載時(shí)調(diào)試信號(hào)只需SWDIO(Pin7)、SWDCLK(Pin9)即可。一般可以做一個(gè)轉(zhuǎn)接板方便連接和調(diào)試,如圖所示。
需注意有的Jlink硬件必須連接VCCvref(Pin1)獲取MCU的工作電壓,一般在Jlink內(nèi)部有一個(gè)跳線帽可以選擇VCCoutput(Pin2)是否對(duì)外供電。
Jlink 仿真器接口

Jlink引腳定義

Jtag接口轉(zhuǎn)接板

2.5 GD-link仿真器接口
GD-link仿真器接口為10針,支持Jtag/SWD模式下載和調(diào)試,接口定義如下圖。使用SWD時(shí)只需使用Pin2、Pin4連接目標(biāo)板PA13、PA14即可,Pin1電源引腳可以對(duì)目標(biāo)板進(jìn)行供電。為方便連接和調(diào)試可以使用轉(zhuǎn)接板,如下圖。
GDlink接口

GDlink引腳定義

GDlink轉(zhuǎn)接板

2.6 J-flash下載流程
使用Jlink連接到目標(biāo)板,Jlink上的指示燈狀態(tài)為綠燈常亮。
打開J-flash軟件,在Options菜單欄下點(diǎn)擊Project setting進(jìn)入設(shè)置界面,如圖。

- 在Project Settings界面中的MCU選項(xiàng)卡下設(shè)置Device選項(xiàng)選擇需要下載的MCU型號(hào),如圖1。在Target Interface選項(xiàng)卡下選擇調(diào)試口的類型和速度,如圖2。
J-flash軟件MCU型號(hào)選擇

J-flash軟件調(diào)試口設(shè)置

- 選擇好型號(hào)后,相關(guān)操作便都在Jflash首頁(yè)面的Target菜單欄下,首先點(diǎn)擊Connect進(jìn)行連接,連接成功后下方Log框會(huì)有信息提示,如圖。
J-flash軟件連接目標(biāo)板

J-flash打開Bin文件

- 在Target菜單欄下Manual Programming選項(xiàng)下有上鎖(讀保護(hù))、解鎖(去讀保護(hù))、擦除、編程、讀等操作可選,如圖3-23。如需下載只需點(diǎn)擊Target菜單欄下Production Program或按下F7即可下載,下載成功后會(huì)有彈窗提示,如圖,如果下載失敗下方Log會(huì)顯示詳細(xì)錯(cuò)誤信息。
Jflash用戶操作選項(xiàng)

Jflash下載成功

2.7 GD-link Programmer下載流程
1 使用GD-link連接到目標(biāo)板,連接成功后GD-link上的LED2快速閃爍。
2 打開GD-link Programmer軟件,在菜單欄Target下點(diǎn)擊Connect連接MCU。在右邊信息欄可以顯示GD-link固件信息、MCU信息,同時(shí)可選擇SWD/JATG以及設(shè)置通信速率。在下方STATUS欄中會(huì)顯示MCU選項(xiàng)字節(jié)信息,如果選項(xiàng)字節(jié)前兩個(gè)字節(jié)不是A5 5A 則表示MCU有安全保護(hù),需要點(diǎn)擊Insecurity后才能操作。如圖所示。
GD-link Programmer軟件連接目標(biāo)板

3 在菜單欄File下點(diǎn)擊OPEN可以打開Bin或Hex,如果是打開Bin會(huì)有彈窗需要輸入Bin的起始地址。打開Bin或Hex都會(huì)在下方Status欄中顯示文件的校驗(yàn)和。如圖所示。
GD-link Programmer打開Bin或Hex

4 在菜單欄Target下選擇Program可以把打開的Bin或Hex燒錄到MCU中,在此菜單欄下還可以進(jìn)行擦除、讀取Flash、運(yùn)行代碼、添加安全保護(hù)、去除安全保護(hù)等操作。如圖所示。
GD-link Programmer用戶操作選項(xiàng)

5 需注意安全保護(hù)選項(xiàng)內(nèi)有High等級(jí)和Low等級(jí),部分GD MCU型號(hào)有高級(jí)別Flash保護(hù),添加后將無(wú)法解鎖,不能再通過(guò)外部操作Flash。一般情況選擇Low進(jìn)行安全保護(hù)即可。如圖。
GD-link Programmer添加安全保護(hù)

2.8 SWD/JTAG燒錄注意事項(xiàng)
- MCU無(wú)法連接時(shí)需注意檢查MCU中是否有程序禁用了SWD/Jtag調(diào)試端口,MCU是否處在睡眠等狀態(tài)下。如果都不是可以降低SWD/Jtag通信速率、降低調(diào)試連接線的長(zhǎng)度再進(jìn)行測(cè)試;
- 調(diào)試器的RESET引腳建議和MCU的復(fù)位PIN連接,這樣能較好的時(shí)序匹配;
- SWDIO內(nèi)部已經(jīng)上拉, SWCLK已內(nèi)部下拉,不外接相應(yīng)的上下拉電阻一般可以使用,但是建議SWDIO外接10K上拉, SWCLK外接10K下拉,以提高SWD接口信號(hào)驅(qū)動(dòng)能力;
- SWD/Jtag信號(hào)線避免串入較多干擾,PCB走線注意不要靠電感等感性器件過(guò)近。工業(yè)級(jí)應(yīng)用中可以增加上下拉處理對(duì)地并pF級(jí)電容,提高調(diào)試接口的抗干擾能力;
- PB3為SWO輸出信號(hào),使用到該功能才需要將SWO接出來(lái),否則可以不用引出。
本教程由GD32 MCU方案商聚沃科技原創(chuàng)發(fā)布,了解更多GD32 MCU教程,關(guān)注聚沃科技官網(wǎng)
-
單片機(jī)
+關(guān)注
關(guān)注
6056文章
44796瀏覽量
643592 -
嵌入式
+關(guān)注
關(guān)注
5119文章
19403瀏覽量
312276 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5321瀏覽量
100353 -
燒錄
+關(guān)注
關(guān)注
8文章
277瀏覽量
36043 -
GD32
+關(guān)注
關(guān)注
7文章
417瀏覽量
24924
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
GD32 MCU 入門教程】GD32 MCU 常見(jiàn)外設(shè)介紹(12)FMC 模塊介紹

《GD32 MCU原理及固件庫(kù)開發(fā)指南》+讀后感
兆易創(chuàng)新GD32 MCU選型手冊(cè),適用于GD32全系列MCU
不同型號(hào)的GD32 MCU如何區(qū)分?

【GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(1)使用Keil開發(fā)GD32

【GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(2)使用 IAR 開發(fā) GD32

【GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(3)使用 Embedded Builder 開發(fā) GD32

【GD32 MCU 入門教程】二、GD32 MCU 燒錄說(shuō)明(1)ISP 燒錄

【GD32 MCU 入門教程】二、GD32 MCU 燒錄說(shuō)明(3)脫機(jī)燒錄

【GD32 MCU 入門教程】GD32 MCU 常見(jiàn)外設(shè)介紹(14)RTC 模塊介紹

【GD32 MCU入門教程】GD32 MCU GPIO 結(jié)構(gòu)與使用注意事項(xiàng)

評(píng)論