瑞芯微RK3399嵌入式板卡PCBA測試工具開發指南
OK3399-C PCBA測試
PCBA 測試工具用于幫助在量產的過程中快速的甄別PCBA的好壞,提高生產效率。RK官方說明文檔位于external/rk-pcba-test/doc/RockChipPCBA測試工具說明V3.0.pdf目錄。
目前PCBA支持的測試項包括DDR\EMMC、屏幕(LCD)、實時時鐘(RTC)、無線(wifi)、SD卡(sdcard)、U盤、按鍵(KEY)等測試項目。
這些測試項目包括自動測試項和手動測試項,DDR\EMMC、RTC、wifi為自動測試項,KEY、LCD、SD卡、U盤為手動測試項目。
該工具支持通過配置文件test_config.cfg對測試項進行配置,具體的配置說明請參第3部分“配置文件”
一、編譯PCBA固件
PCBA測試程序位于Android源碼/extenal/rk-pcba-test目錄下,編譯會生成pcba_core可執行文件,pcba_core和rk-pcab-test/res下的相關文件在編譯的時候會被自動拷貝到recovery的sbin目錄下。
默認PCBA測試功能是關閉的,需要修改代碼打開PCBA支持。
修改:device/rockchip/rk3399/rk3399_all.mk
TARGET_ROCKCHIP_PCBATEST=true
source build/envsetup.sh
lunch rk3399_all-userdebug
make recoveryimage
./mkimage.sh
./mkupdate.sh
這樣,支持PCBA測試的固件制作完成,位于:rockdev/Image-rk3399_all/update.img
二、制作PCBA測試卡
下面,我們來制作一張專門用于PCBA測試的TF卡,這樣,每當飛凌RK3399主板插入該TF卡時都將自動進入PCBA測試。
將前面一節制作的PCBA固件拷貝到windows上,以管理員權限打開SD_Firmware_Tool.exe
選擇TF卡并勾選“PCBA測試”選項,選擇你的PCBA固件,點擊“開始創建”。創建完成后將TF卡插入飛凌RK3399開發板并重新啟動,系統將自動進入PCBA測試流程。
三、PCBA項說明
測試項分為 “自動測試項” 和 “手動測試項”
自動測試項:由系統自動進行測試并判斷測試結果,如:網絡,內存,時鐘等。
手動測試項:需要由人工配合完成或者配合判斷測試結果。如:錄音,按鍵,U盤,SD卡等。
測試項分別有 “紅”,“黃”,“綠” 三種顏色表示不同的測試狀態
黃色:未測試項或者正在測試的項
綠色:測試通過項
紅色:測試未通過項
PCBA所有的測試項目通過一個配置腳本test_config.cfg來配置,位于/external/rk-pcba-test/res/test_config.cfg,用戶可以根據項目的硬件配置來配置test_config.cfg文件,決定要對哪些模塊進行測試,以及給自己的測試程序傳遞相關的參數。當然,目前支持的測試項是有限的,您可以參考代碼自行添加想要的測試項。
該腳本使用ini文件格式,由段、鍵和值三者組成,通常一個段表示一個模塊配置。目前要求該配置文件使用UTF-8編碼,其他編譯格式可能會導致未知錯誤。
模塊配置示例:
測試模塊配置模板
[example]
display_name= "Example"
activated = 1
program = "example.sh"
category = 0
Example 表示一個配置模塊的名稱,如果是cfg文件中自帶的模塊名稱,則 不能改動,否則會導致某個測試項不被測試系統啟動。
display_name表示該測試模塊在屏幕上顯示的名稱,可以根據自己的需要修改。該名稱最長為64字節,如果為空,則測試程序不會運行。
activated表示是否測試該模塊
0:不測試該模塊
1:測試該模塊
program該鍵值目前沒用到,可以不用配置
category 表示測試方式
0:自動測試
1:手動測試