在汽車電子開發、測試和售后診斷中,我們經常需要對ECU進行固件升級,即“刷新”。
當前市面上的主流方案是通過硬編碼的方式實現,但這種方式的缺點也顯而易見:只有懂編程的工程師才能做,一般工程師無法勝任;當需要修改刷新流程的時候,刷新工具必須重新編譯生成軟件。這對于刷新工具的維護極為不便。
針對這一痛點,勤壯提供了一套通過腳本實現的方案。由于采用圖形化配置界面,任何類型的工程師都可以輕松勝任;當需要修改的時候也只需修改腳本本身,無需重新編譯生成整個軟件,相比其他方案更方便、更靈活、更容易上手。
接下來我們按照步驟一一解析:
1.如何配置腳本?
首先我們有必要了解下兩個專有名詞:刷新規范和QzTitan。
刷新規范
刷新規范一般由整車廠制定,詳細定義了刷新的具體步驟。一般分為刷新前、刷新中、刷新后。
刷新前:切換會話、安全訪問等;
刷新中:34/36/37服務執行具體刷新動作;
刷新后:完整性校驗、兼容性校驗等。
QzTitan
QzTitan是一款簡單易用的、圖形化的、綜合流程配置工具,文件后綴為ttn和ttb。
QzTitan可用于各種功能的開發,如刷新、IMMO等,同時可用于基礎軟件測試用例的開發,如:診斷測試用例、NM測試用例等,能夠滿足絕大多數汽車電子開發中的開發和測試場景。
由于使用圖形化的配置方式,QzTitan相比于使用硬編碼具有更強的靈活性,使得非軟件開發人員也能輕松使用。
流程由語句和語句之間的關系組成。語句采用基礎加擴展的基本方式,軟件預定義了一些常用的語句,如:If、delay、assign、math、service、sendmsg。若預定義語句無法滿足要求,可以通過usercall機制調用外部自定義函數。
由于腳本文件是二進制的,所以可以在各種軟硬件平臺上使用。軟件平臺包括:windows、linux、無操作系統環境,硬件平臺包括:PC、MCU等。
用Titan實現刷新規范
通過不同語句的組合形成一個刷新流程,下面以1001為例來說明如何配置服務:
1.從左側選中10服務;
2.拖放到中間的畫布;
3.在右側屬性窗口配置該服務的屬性。
注意:1.什么是FastSA?SA一般由兩條服務組成:RequestSeed和ResponseKey,FastSA指的就是這兩條服務的組合。系統會自動根據配置調用SADLL,計算Key。2. 添加語句的方式:拖放。
ttn與ttb的關系
ttn是ttb的源文件,ttn可生成ttb,ttb不可以反向生成ttn,所以需要注意保存ttn。
2.如何執行腳本?
我們首先會用到QzSaturn這個工具,QzSaturn是一款總線和診斷測試工具,是整個工具鏈中的主軟件,文件后綴為:*.stn。
QzSaturn的主要功能包括:報文監控、圖形監控、總線記錄與回放、全車診斷、工程面板、流程、診斷、刷新、網報報文發送等,覆蓋了汽車電子開發與測試中最常用的功能。刷新是其功能之一。
刷新步驟:
1.導入ttb文件
將配置完成的腳本導入到QzSaturn刷新子窗口中。
2.導入刷新數據文件
指的是要刷的數據文件,支持HEX、S19和BIN。
3.基本參數的配置
對ECU基本參數進行配置,如:RequestID、ResponseID。
4.SA算法庫的導入
刷新前一般需要解鎖SA,解鎖算法由SA算法庫實現。在windows平臺的文件后綴為*.dll,DLL本身的制作方法見下文。
5.CRC配置
選擇相應的CRC類型及相關信息,并點擊按鈕計算CRC。
6.開始刷新。
如何制作SA算法庫?
本質是制作一個特定接口的動態鏈接庫*.dll。
制作工具:Visual Studio 2015
開發語言:C/C++
接口函數:extern “C” __declspec(dllexport) UINT32 saturn_key_generate(
UINT8* p_seed,
UINT32 seed_length,
UINT32 level,
UINT8* param,
UINT8* p_key,
UINT32 key_length,
UINT32& key_size)
參數說明:
P_seed:Seed
Seed_length:Seed長度,一般為4;
Level:SA level.以2701為例,應填01
Param:用戶自定義
P_key:Key Buffer,用于存儲函數返回的Key
Key_length:Key Buffer的指定長度,
Key_size:Key實際長度,一般跟Seed長度一致
兩種方式:源碼封裝方式、二次封裝方式。
源碼封裝方式:直接在圖示位置寫代碼實現SA算法。
二次封裝方式:在圖示位置調用外部算法庫。一般用于整車廠需要對算法保密的場景。
通過以上操作,可以實現適應不同場景、靈活和高效的刷新。
責任編輯:gt
-
測試
+關注
關注
8文章
5362瀏覽量
126912 -
軟件
+關注
關注
69文章
4999瀏覽量
87896 -
編碼
+關注
關注
6文章
953瀏覽量
54907
發布評論請先 登錄
相關推薦
評論