來(lái)源 | 麥克泰技術(shù)
編排 | strongerHuang
J-Link是嵌入式軟件、硬件工程師最常用的工具之一,但是,在使用這個(gè)工具時(shí),也會(huì)遇到各種各樣的問(wèn)題。
今天來(lái)給大家講講最常見(jiàn)的一個(gè)問(wèn)題:J-Link不能連接目標(biāo)MCU。
J-Link的連接
使用J-Link,首先第一步硬件連接,確認(rèn)J-Link和PC機(jī)之間是否連接正常,并確認(rèn)上位機(jī)能和 J-Link 建立正確的通信。
1. 通過(guò)USB端口將J-Link連接到PC機(jī);
2. 啟動(dòng)J-Link Commander;
3. 如果J-Link正常運(yùn)行,則應(yīng)該看到J-Link Commander窗口中報(bào)告USB連接正常。并輸出其使用的固件信息:
J-Link目標(biāo)MCU的連接
J-Link與你的目標(biāo)MCU進(jìn)行連接,通常有 SWD 和 JTAG兩種接口方式。
請(qǐng)參看《下載調(diào)試接口 SWD 和 JTAG的區(qū)別》。
JTAG基本上帶有5個(gè)引腳:
TDI:Test Data In。串行輸入引腳
TDO:Test Data Out,串行輸出引腳
TCK:Test Clock,時(shí)鐘引腳
TMS:Test Mode Select,模式選擇(控制信號(hào))引腳
TRST:Test Reset,復(fù)位引腳
SWD引腳
SWDIO:Serial Wire Data Input Output,串行數(shù)據(jù)輸入輸出引腳
SWCLK:Serial Wire Clock,串行線時(shí)鐘引腳
第一步:要確認(rèn)這幾根線連接正確
如果是標(biāo)準(zhǔn)的接口(像20Pin插座)這種應(yīng)該問(wèn)題不大。
第二部:使用J-Link Commander驗(yàn)證功能
這里需要你安裝 J-Link Commander 上位機(jī)軟件,如果沒(méi)有,可以去官網(wǎng)下載。
地址:https://www.segger.com/downloads/jlink
命令連接:
通過(guò)USB將J-Link連接到PC機(jī)
給目標(biāo)設(shè)備供電
將目標(biāo)設(shè)備與J-Link連接
啟動(dòng)J-Link Commander并按照啟動(dòng)配置說(shuō)明進(jìn)行操作
常見(jiàn)連接失敗問(wèn)題
J-Link連接失敗有很多種情況,這里說(shuō)幾點(diǎn)常見(jiàn)情況。
1. VTref 的電壓是0V問(wèn)題
J-Link檢測(cè)到目標(biāo)參考電壓是0V。由于J-Link使用目標(biāo)參考電壓來(lái)創(chuàng)建調(diào)試信號(hào)的電平,因此必須使用參考電壓。
檢查目標(biāo)硬件的電源,并驗(yàn)證其電源的供電(打開(kāi)電源,正確設(shè)置跳線等)。
使用萬(wàn)用表測(cè)量調(diào)試連接器的引腳1(VTref)和引腳4(GND)之間的電壓。
2. 接口設(shè)置問(wèn)題
在某些硬件/設(shè)備上,僅某些已連接的調(diào)試接口可以使用。另一個(gè)問(wèn)題可能是硬件不允許更高的接口速度。
檢查是否選擇了正確的目標(biāo)接口(JTAG,SWD等),將接口速度降低,比如100 kHz。
不同目標(biāo)的速度不同,比如ARM926EJ-S內(nèi)核,最大值 JTAG速度== MCU速度的1/8,最高為的1/6(可能小于100 kHz)。
3. 接口信號(hào)
如果J-Link到目標(biāo)的連接仍然失敗,則很可能是接口信號(hào)本身存在問(wèn)題。
可能的原因:
調(diào)試信號(hào)未連接
調(diào)試信號(hào)與其它外設(shè)或板載仿真器共享
可能的解決方案:
斷開(kāi)板載仿真器或其它可能在目標(biāo)接口線上交互的外圍設(shè)備
使用示波器檢查調(diào)試信號(hào)的質(zhì)量
4. 對(duì)目標(biāo)設(shè)備進(jìn)行編程后,J-Link不再能夠建立連接
這可能涉及許多不同的因素,例如:應(yīng)用程序確實(shí)禁用了調(diào)試接口,重新配置了調(diào)試引腳進(jìn)入了某種低功耗模式或激活了設(shè)備的安全防護(hù)功能。
為了防止在開(kāi)發(fā)過(guò)程中出現(xiàn)此類情況,建議:
a. 在執(zhí)行實(shí)際的應(yīng)用程序代碼之前,增加一秒的延遲,這允許調(diào)試仿真器在MCU執(zhí)行將阻止J-Link成功建立連接的“錯(cuò)誤代碼”之前,重置MCU并使其停止運(yùn)行。
b. 選擇正確的設(shè)備,這允許J-Link DLL執(zhí)行(例如:在引導(dǎo)加載程序中暫停,重置下連接或檢查是否是不安全的設(shè)備)特殊處理。
來(lái)源:網(wǎng)絡(luò)
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)聯(lián)系小編進(jìn)行處理
審核編輯 黃宇
-
mcu
+關(guān)注
關(guān)注
146文章
17148瀏覽量
351212 -
J-Link
+關(guān)注
關(guān)注
0文章
84瀏覽量
22145
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論