前面幾篇文章,介紹了關(guān)于JTAG邊界掃描的一些基礎(chǔ)知識(shí)和常用的調(diào)試軟件。
強(qiáng)大的JTAG邊界掃描1-基本原理
強(qiáng)大的JTAG邊界掃描2-BSDL文件
強(qiáng)大的JTAG邊界掃描3-常用邊界掃描測(cè)試軟件
今天我們來演示基于STM32+Jlink的邊界掃描實(shí)際應(yīng)用。
試想這樣一個(gè)場(chǎng)景,我們新設(shè)計(jì)了一款集成了很多芯片的板卡,包括BGA封裝的微控制器,如FPGA/MCU,還有LED、按鍵、串口、傳感器、ADC等基本外設(shè)。
我們需要測(cè)試一下硬件電路工作是否正常、焊接是否良好,通常我們會(huì)寫個(gè)測(cè)試代碼,比如控制LED閃爍,讀取按鍵的輸入,串口收發(fā)一些數(shù)據(jù),然后把程序燒錄進(jìn)去,看看現(xiàn)象是否和我們?cè)O(shè)計(jì)的一致。
當(dāng)現(xiàn)象和設(shè)計(jì)不一致時(shí),是代碼設(shè)計(jì)的問題、還是硬件原理的問題、又或者是焊接的問題呢?應(yīng)該如何一一排除呢?
這里就可以使用JTAG邊界掃描的測(cè)試方法,來驗(yàn)證到底是哪里出的問題,因?yàn)镴TAG邊界掃描不需要寫任何代碼,只需要一個(gè)BSDL文件,就可以控制和讀取芯片的任意管腳。
下面我們以意法半導(dǎo)體 MCU STM32F103為例,配合JLink,演示JTAG邊界掃描的應(yīng)用。
1. 獲取芯片的BSDL文件
獲取意法半導(dǎo)體MCU的BSDL文件,可以到官方網(wǎng)站搜索BSDL,就會(huì)彈出對(duì)應(yīng)系列的BSDL文件包。 
STM32F1系列BSDL文件的下載地址:
下載到本地之后解壓,可以看到很多BSDL文件,我們開發(fā)板上的芯片型號(hào)是STM32F103ZET6-LQFP144,屬于大容量芯片,所以BSDL文件對(duì)應(yīng)的是:
STM32F1_High_density_LQFP144.bsd 關(guān)于其他芯片的BSDL文件獲取方式,可以參考之前的文章:強(qiáng)大的JTAG邊界掃描(2):BSDL文件介紹
2. 硬件連接
按照下圖所示,使用排線連接JLink和開發(fā)板的JTAG接口。
hw 并確保設(shè)備管理器里JLink驅(qū)動(dòng)被正確識(shí)別。
3. 邊界掃描測(cè)試
關(guān)于TopJTAG邊界掃描測(cè)試軟件的介紹和基本使用,可以參考之前的文章:強(qiáng)大的JTAG邊界掃描(3):常用邊界掃描測(cè)試軟件 打開TopJTAG Probe軟件之后,先創(chuàng)建一個(gè)工程,并選擇JTAG設(shè)備類型,這里我們使用的是JLink。 
如果硬件連接正確,驅(qū)動(dòng)安裝正常,軟件會(huì)自動(dòng)識(shí)別到連接的芯片。
指定芯片所對(duì)應(yīng)的BSDL文件,這里我們選擇上一步下載的STM32F1_High_density_LQFP144.bsd文件,并進(jìn)行IDCODE校驗(yàn)。
如果IDCODE不匹配,說明選擇的BSDL文件錯(cuò)誤,之后就進(jìn)入到邊界掃描測(cè)試界面了。
點(diǎn)擊Instruction按鈕,可以選擇三種測(cè)試命令:
BYPASS:旁路掉當(dāng)前器件,在菊花鏈拓?fù)浞绞綍r(shí),跳過當(dāng)前器件
SAMPLE:采樣模式,可以對(duì)所有管腳的狀態(tài)進(jìn)行讀取,可以統(tǒng)計(jì)電平翻轉(zhuǎn)的次數(shù),或者以波形方式顯示實(shí)時(shí)狀態(tài)
EXTEST:可以任意的控制所有外部管腳的狀態(tài),可手動(dòng)指定為高低電平,高阻態(tài)。

這里我們選擇SAMPLE模式,點(diǎn)擊RUN按鈕,可以看到芯片所有的管腳實(shí)時(shí)狀態(tài),
在Pins窗口,可以看到所有管腳的實(shí)時(shí)狀態(tài),選中一個(gè)管腳,可以把它添加到Watch窗口,或者Waveform窗口。 切換到EXTEST模式,可以手動(dòng)設(shè)置管腳的高低電平或高阻狀態(tài)。
Watch窗口信號(hào)的還原能力,完全取決于JTAG_TCK的頻率,即管腳信號(hào)的采樣時(shí)鐘。
4. 總結(jié)
通過邊界掃描可以快速的判斷文章開頭提到的幾個(gè)問題,如果使用邊界掃描的方式,發(fā)現(xiàn)讀取和控制管腳的狀態(tài)不對(duì),那么可以判定是焊接的問題,通過編程,甚至可以按照一定的時(shí)序來控制管腳的狀態(tài),從而達(dá)到控制外部器件的目的。
總之,邊界掃描是一種非常實(shí)用的測(cè)試方法,在電路板生產(chǎn)制造、芯片設(shè)計(jì)、芯片封測(cè)等方面都有很廣泛的應(yīng)用。
審核編輯:湯梓紅
-
mcu
+關(guān)注
關(guān)注
147文章
19103瀏覽量
403020 -
STM32
+關(guān)注
關(guān)注
2312文章
11189瀏覽量
374477 -
意法半導(dǎo)體
+關(guān)注
關(guān)注
31文章
3399瀏覽量
111959 -
邊界掃描
+關(guān)注
關(guān)注
1文章
32瀏覽量
15462 -
Jlink
+關(guān)注
關(guān)注
6文章
115瀏覽量
39641
原文標(biāo)題:強(qiáng)大的JTAG邊界掃描4-STM32邊界掃描應(yīng)用
文章出處:【微信號(hào):mcu149,微信公眾號(hào):電子電路開發(fā)學(xué)習(xí)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
什么是邊界掃描?JTAG邊界掃描測(cè)試方案介紹
基于STM32+Jlink的邊界掃描實(shí)際應(yīng)用演示
如何利用Eclipse去搭建一種stm32+jlink開發(fā)環(huán)境呢
邊界掃描測(cè)試技術(shù)介紹
如何通過邊界掃描測(cè)試進(jìn)行差分信號(hào)測(cè)試?
有沒有免費(fèi)的工具可用于STM32F4進(jìn)行邊界掃描測(cè)試?
VXI邊界掃描模塊接口電路的設(shè)計(jì)
邊界掃描與電路板測(cè)試技術(shù)
邊界掃描測(cè)試的原理及應(yīng)用設(shè)計(jì)
簡(jiǎn)述BSDL邊界掃描語言,BSDL邊界掃描語言的應(yīng)用
邊界掃描測(cè)試的基本原理及其測(cè)試系統(tǒng)的設(shè)計(jì)
邊界掃描技術(shù)的詳細(xì)資料描述
JTAG(四) 邊界掃描測(cè)試技術(shù)
邊界掃描測(cè)試軟件XJTAG和TopJTAG介紹
基于Xilinx FPGA的邊界掃描應(yīng)用
基于STM32+Jlink的邊界掃描實(shí)際應(yīng)用
評(píng)論