JTAG下載調試電路


JTAG(Joint Test Action Group,聯合測試行動小組)是一種國際標准測試協議(IEEE 1149.1兼容),主要用於芯片內部測試。現在多數的高級器件都支持JTAG協議,如ARM、DSP、FPGA器件等。標准的JTAG接口是4線:TMS、 TCK、TDI、TDO,分別為模式選擇、時鍾、數據輸入和數據輸出線。 相關JTAG引腳的定義為:

 

TMS:測試模式選擇,TMS用來設置JTAG接口處於某種特定的測試模式;

TCK:測試時鍾輸入;

TDI:測試數據輸入,數據通過TDI引腳輸入JTAG接口;

TDO:測試數據輸出,數據通過TDO引 腳從JTAG接口輸出;

 

JTAG協議在定義時,由於當時的計算機(PC機)普遍帶有並口,因而在連接計算機端是定義使用的並口。而計算機到了今天,不要說筆記本電腦,現在台式計算機上面有並口的都很少了,取而代之的是越來越多的USB接口。USB接口是一種串口協議,那么能不能讓JTAG支持USB協議,用USB接口來調試ARM呢?這就要說到JLINK和ULINK了。

 

J-Link是德國SEGGER公司推出基於JTAG的仿真器。簡單地說,是給一個JTAG協議轉換盒,即一個小型USB到JTAG的轉換盒,其連接到計算機用的是USB接口,而到目標板內部用的還是jtag協議。它完成了一個從軟件到硬件轉換的工作。

ULINK是ARM/KEIL公司推出的仿真器,目前網上可找到的是其升級版本,ULINK2和ULINKPro仿真器。ULINK/ULINK2可以配合Keil軟件實現仿真功能,並且僅可以在Keil軟件上使用,增加了串行調試(SWD)

ST-LINK是專門針對意法半導體STM8和STM32系列芯片的仿真器。

 

總結下,不管是JLink,ULINK還是ST-LINK都是基於JTAG協議實現的,也就是把協議燒到了實際硬件里面,后面的ULINK和ST-LINK可能對自己平台做了些優化。

如今 JTAG 接口的連接有三種標准,即 14 針接口和 20 針接口和10針接口,其定義分別如下所示。

14針

1 、 13   VCC 接電源

2 、 4 、 6 、 8 、 10 、 14   GND 接地

3  nTRST  測試系統復位信號

5  TDI   測試數據串行輸入

7  TMS  測試模式選擇

9  TCK  測試時鍾

11 TDO   測試數據串行輸出

12 NC   未連接

20針

1 VTref   目標板參考電壓,接電源

2 VCC   接電源

3 nTRST   測試系統復位信號

4、6、8、10、12、14、16、18、20  GND 接地

5 TDI   測試數據串行輸入

7 TMS   測試模式選擇

9 TCK   測試時鍾

11 RTCK  測試時鍾返回信號

13 TDO   測試數據串行輸出

15 nRESET   目標系統復位信號

17 、 19 NC  未連接

10針

仿真器端口 AVR端口 備注

1. TCK TCK

2. NC NC

3. TDO TDO

4. Vtref VCC

5. TMS TMS

6. nSRST RESET

7. NC / Vsupply NC / VCC JTAG ICE仿真器:VCC;JTAG ICE mkII仿真器:NC

8. nTRST NC ATMEL尚且保留該端口,如今暫不使用它,未來可能會使用

9. TDI TDI

10.GND GND

 

 

實際上10針的只需要接4根線,4號是自連回路,不需要接,1,2接的都是1管腳,而8,10接的是GND,也可以不接。

 

值得注意的是有些單片機在內部直接將與JTAG接口地方集成了上下拉電阻,這樣就不用外接上拉或者下拉電阻了。上面的是在STM32單片機上手冊的說明,很明顯,它內部已經集成了上下拉電阻了。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM