泰凌的產(chǎn)測(cè)工具默認(rèn)提供了多個(gè)產(chǎn)測(cè)固件,比如測(cè)試射頻RF,測(cè)試低功耗電流,這些都屬于前置測(cè)試,即測(cè)試PCBA硬件是否存在異常。如果PCBA板子有sensor之類(lèi)的傳感器,是否可以檢測(cè)硬件異常呢?這是可以實(shí)現(xiàn)的。泰凌的產(chǎn)測(cè)系統(tǒng)的實(shí)現(xiàn)機(jī)制是:先生成一個(gè)RAM版本的產(chǎn)測(cè)固件,然后通過(guò)芯片的燒錄口把RAM版本的產(chǎn)測(cè)固件加載到DUT待測(cè)設(shè)備芯片的RAM中,讓產(chǎn)測(cè)固件執(zhí)行相關(guān)指令,就可以達(dá)到測(cè)試的目的。本文就以TLSR8208 SoC檢測(cè)震動(dòng)傳感器為例介紹產(chǎn)測(cè)固件的生成和使用方法。
另外,客戶對(duì)產(chǎn)品的各種功能進(jìn)行的量產(chǎn)測(cè)試,我們稱之為功能測(cè)試,以便和前置測(cè)試區(qū)分。這些功能測(cè)試,受限與RAM空間和客戶需求不同,只能客戶自行實(shí)現(xiàn)。
1
如何生成產(chǎn)測(cè)固件
1、下載產(chǎn)測(cè)固件的工程
因?yàn)楫a(chǎn)測(cè)固件需要在RAM運(yùn)行,有兩點(diǎn)要求,一是啟動(dòng)文件是ram啟動(dòng)的,二是固件本身要足夠小,必須小于8K,加載到RAM中才能運(yùn)行。泰凌已經(jīng)提供了生成RAM固件的demo工程,就是driver sdk中的dut_demo例程。在泰凌wiki網(wǎng)站下載driver sdk,如下圖所示的V1.5.1版本,此driver sdk包含了B80, B85和B87三個(gè)系列芯片的driver demo:
http://wiki.telink-semi.cn/wiki/chip-series/TLSR825x-Series/
2、Dut_Demo說(shuō)明
此Demo例程的具體代碼并不復(fù)雜,請(qǐng)客戶自行理解。此處只說(shuō)一些關(guān)鍵點(diǎn),如下圖截取的代碼:
-
dut_cmd_func結(jié)構(gòu)體數(shù)組,一個(gè)結(jié)構(gòu)體成員是cmd id,新增了DUTCMD_SENSOR_TEST,定義是0x69,后面腳本文件test.tls中會(huì)用到此cmd id。另一個(gè)結(jié)構(gòu)體成員就是函數(shù)指針,新增的vibration_sensor_test就是一個(gè)函數(shù)指針,在這個(gè)函數(shù)內(nèi)實(shí)現(xiàn)震動(dòng)傳感器的檢測(cè)。
-
tl_test_cmd_pkt_t_another *g_test_cmd_ptr 是一個(gè)指向RAM地址(0x840004地址)的指針。此RAM區(qū)域被定義為了量產(chǎn)夾具(JIG EVK)和DUT測(cè)試芯片之間通信的buffer,量產(chǎn)的JIG evk可以通過(guò)下發(fā)指令和參數(shù),也可以讀取產(chǎn)測(cè)的結(jié)果。比如結(jié)構(gòu)體成員param[2],是用來(lái)做輸入?yún)?shù)(可選的),比如設(shè)定檢測(cè)的震動(dòng)次數(shù),在腳本文件test.tls中有使用到。結(jié)構(gòu)體成員resp[3]就是檢測(cè)結(jié)果的返回值。
3、檢測(cè)振動(dòng)傳感器的代碼
檢測(cè)震動(dòng)傳感器的機(jī)制是:使用Timer定時(shí)器,來(lái)捕獲GPIO的脈沖輸入個(gè)數(shù)。在規(guī)定的時(shí)間內(nèi),檢測(cè)到脈沖數(shù)大于設(shè)定的個(gè)數(shù)(10次)則傳感器正常,否則硬件異常。具體代碼如下圖所示。
2
如何使用產(chǎn)測(cè)固件
1、修改腳本文件test.tls
-
編譯driver sdk中的 DUT_DEMO,生成的bin重命名為:dut_b80_sensor_v0001.bin,然后copy到已經(jīng)配置過(guò)測(cè)試項(xiàng)的Evkmonitor/platform/default目錄下:
-
修改腳本文件test.tls腳本,新增下面的指令
說(shuō)明1:fast_load指令是把產(chǎn)測(cè)固件加載到RAM中的,所以輸入?yún)?shù)的名稱務(wù)必與第(1)步中產(chǎn)測(cè)固件的名稱相同,否則加載錯(cuò)誤。
說(shuō)明2:因?yàn)?"dut_b80_sensor_v0001.bin"是用戶自定義的測(cè)試bin文件,所以在fast_load指令之前必須先設(shè)置config[12] = 0.如果后面要繼續(xù)使用泰凌提供的測(cè)試bin文件,如dut_8258_flash_v0005.bin,則必須重新設(shè)置config[12] = 1。
說(shuō)明3:Dutcmd指令說(shuō)明參考下圖,
-
cmd id是0x69,對(duì)應(yīng)程序中的DUTCMD_SENSOR_TEST宏定義
-
Para0 = 10,對(duì)應(yīng)程序中設(shè)定的震動(dòng)次數(shù)
-
Para1沒(méi)有用到,設(shè)為0
-
超時(shí)時(shí)間,設(shè)定為5s,也就是dutcmd指令的超時(shí)時(shí)間;必須大于程序里檢測(cè)震動(dòng)的工作時(shí)間3s。
2、產(chǎn)測(cè)的使用
更改了test.tls腳本后,需要重新download到JIG EVK里面才能生效。打開(kāi)Evkmonitor軟件進(jìn)行在線測(cè)試,結(jié)果如下。
-
測(cè)試通過(guò)pass的顯示和測(cè)試log。
-
測(cè)試失敗的顯示和測(cè)試log
3
關(guān)于產(chǎn)測(cè)工具的連載文章
【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用方式一
【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用方式二
【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用——配置帶PA芯片的測(cè)試腳本
【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用——常見(jiàn)問(wèn)題解決方法(一)
【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用——常見(jiàn)問(wèn)題解決方法(二)
關(guān) 于 泰 凌
泰凌微電子致力于為客戶提供一站式的低功耗高性能無(wú)線連接SoC芯片解決方案,包括經(jīng)典藍(lán)牙,藍(lán)牙低功耗,藍(lán)牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有協(xié)議等低功耗2.4GHz多協(xié)議無(wú)線連接系統(tǒng)級(jí)芯片和豐富的固件協(xié)議棧。公司產(chǎn)品廣泛應(yīng)用于智能照明,智能家居/樓宇,智能遙控,無(wú)線外設(shè),智能零售,穿戴設(shè)備,無(wú)線音頻,智能玩具,物流追蹤,智慧城市等各類(lèi)消費(fèi)和商業(yè)應(yīng)用場(chǎng)景中。
官網(wǎng):www.telink-semi.com
微信公眾號(hào):telink-semi
https://developers.telink-semi.cn/
銷(xiāo)售接洽:
中國(guó)大陸(華東、華北) :
+86-21-20281118-8213
中國(guó)大陸(華南、香港、音頻) :
+86-0755-26614003
telinksales@telink-semi.com
原文標(biāo)題:【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用——如何制作及使用產(chǎn)測(cè)固件
文章出處:【微信公眾號(hào):泰凌微電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
泰凌微
+關(guān)注
關(guān)注
7文章
152瀏覽量
10842
原文標(biāo)題:【技術(shù)專欄】泰凌微電子產(chǎn)測(cè)工具使用——如何制作及使用產(chǎn)測(cè)固件
文章出處:【微信號(hào):telink-semi,微信公眾號(hào):泰凌微電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論