一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何通過腳本方案實現(xiàn)對ECU進行固件升級

電子設(shè)計 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2019-12-10 07:58 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

汽車電子開發(fā)、測試和售后診斷中,我們經(jīng)常需要對ECU進行固件升級,即“刷新”。

當(dāng)前市面上的主流方案是通過硬編碼的方式實現(xiàn),但這種方式的缺點也顯而易見:只有懂編程工程師才能做,一般工程師無法勝任;當(dāng)需要修改刷新流程的時候,刷新工具必須重新編譯生成軟件。這對于刷新工具的維護極為不便。

針對這一痛點,勤壯提供了一套通過腳本實現(xiàn)的方案。由于采用圖形化配置界面,任何類型的工程師都可以輕松勝任;當(dāng)需要修改的時候也只需修改腳本本身,無需重新編譯生成整個軟件,相比其他方案更方便、更靈活、更容易上手。

接下來我們按照步驟一一解析:

1.如何配置腳本?

首先我們有必要了解下兩個專有名詞:刷新規(guī)范和QzTitan。

刷新規(guī)范

刷新規(guī)范一般由整車廠制定,詳細定義了刷新的具體步驟。一般分為刷新前、刷新中、刷新后。

刷新前:切換會話、安全訪問等;

刷新中:34/36/37服務(wù)執(zhí)行具體刷新動作;

刷新后:完整性校驗、兼容性校驗等。

QzTitan

QzTitan是一款簡單易用的、圖形化的、綜合流程配置工具,文件后綴為ttn和ttb。

QzTitan可用于各種功能的開發(fā),如刷新、IMMO等,同時可用于基礎(chǔ)軟件測試用例的開發(fā),如:診斷測試用例、NM測試用例等,能夠滿足絕大多數(shù)汽車電子開發(fā)中的開發(fā)和測試場景。

由于使用圖形化的配置方式,QzTitan相比于使用硬編碼具有更強的靈活性,使得非軟件開發(fā)人員也能輕松使用。

流程由語句和語句之間的關(guān)系組成。語句采用基礎(chǔ)加擴展的基本方式,軟件預(yù)定義了一些常用的語句,如:If、delay、assign、math、service、sendmsg。若預(yù)定義語句無法滿足要求,可以通過usercall機制調(diào)用外部自定義函數(shù)。

由于腳本文件是二進制的,所以可以在各種軟硬件平臺上使用。軟件平臺包括:windows、linux、無操作系統(tǒng)環(huán)境,硬件平臺包括:PC、MCU等。

如何通過腳本方案實現(xiàn)對ECU進行固件升級

用Titan實現(xiàn)刷新規(guī)范

通過不同語句的組合形成一個刷新流程,下面以1001為例來說明如何配置服務(wù):

1.從左側(cè)選中10服務(wù);

2.拖放到中間的畫布;

如何通過腳本方案實現(xiàn)對ECU進行固件升級

3.在右側(cè)屬性窗口配置該服務(wù)的屬性。

如何通過腳本方案實現(xiàn)對ECU進行固件升級

注意:1.什么是FastSA?SA一般由兩條服務(wù)組成:RequestSeed和ResponseKey,F(xiàn)astSA指的就是這兩條服務(wù)的組合。系統(tǒng)會自動根據(jù)配置調(diào)用SADLL,計算Key。2. 添加語句的方式:拖放。

ttn與ttb的關(guān)系

ttn是ttb的源文件,ttn可生成ttb,ttb不可以反向生成ttn,所以需要注意保存ttn。

如何通過腳本方案實現(xiàn)對ECU進行固件升級

2.如何執(zhí)行腳本?

我們首先會用到QzSaturn這個工具,QzSaturn是一款總線和診斷測試工具,是整個工具鏈中的主軟件,文件后綴為:*.stn。

QzSaturn的主要功能包括:報文監(jiān)控、圖形監(jiān)控、總線記錄與回放、全車診斷、工程面板、流程、診斷、刷新、網(wǎng)報報文發(fā)送等,覆蓋了汽車電子開發(fā)與測試中最常用的功能。刷新是其功能之一。

如何通過腳本方案實現(xiàn)對ECU進行固件升級

如何通過腳本方案實現(xiàn)對ECU進行固件升級

刷新步驟:

1.導(dǎo)入ttb文件

將配置完成的腳本導(dǎo)入到QzSaturn刷新子窗口中。

2.導(dǎo)入刷新數(shù)據(jù)文件

指的是要刷的數(shù)據(jù)文件,支持HEX、S19和BIN。

3.基本參數(shù)的配置

對ECU基本參數(shù)進行配置,如:RequestID、ResponseID。

4.SA算法庫的導(dǎo)入

刷新前一般需要解鎖SA,解鎖算法由SA算法庫實現(xiàn)。在windows平臺的文件后綴為*.dll,DLL本身的制作方法見下文。

5.CRC配置

選擇相應(yīng)的CRC類型及相關(guān)信息,并點擊按鈕計算CRC。

6.開始刷新。

如何制作SA算法庫?

本質(zhì)是制作一個特定接口的動態(tài)鏈接庫*.dll。

制作工具:Visual Studio 2015

開發(fā)語言:C/C++

接口函數(shù):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)

參數(shù)說明:

P_seed:Seed

Seed_length:Seed長度,一般為4;

Level:SA level.以2701為例,應(yīng)填01

Param:用戶自定義

P_key:Key Buffer,用于存儲函數(shù)返回的Key

Key_length:Key Buffer的指定長度,

Key_size:Key實際長度,一般跟Seed長度一致

兩種方式:源碼封裝方式、二次封裝方式。

源碼封裝方式:直接在圖示位置寫代碼實現(xiàn)SA算法。

二次封裝方式:在圖示位置調(diào)用外部算法庫。一般用于整車廠需要對算法保密的場景。

通過以上操作,可以實現(xiàn)適應(yīng)不同場景、靈活和高效的刷新。

如何通過腳本方案實現(xiàn)對ECU進行固件升級

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 測試
    +關(guān)注

    關(guān)注

    8

    文章

    5708

    瀏覽量

    128927
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5155

    瀏覽量

    89243
  • 編碼
    +關(guān)注

    關(guān)注

    6

    文章

    969

    瀏覽量

    55793
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    求助,通過UART進行基本設(shè)備固件升級的問題求解

    我正在研究設(shè)備固件升級代碼 我可以修改代碼,通過修改 common.mk 使其通過 UART 運行固件
    發(fā)表于 05-28 07:45

    請問如何通過ESP32S3的USB進行固件升級?

    如果通過USB口,在不需要按IO0的情況下,進行升級。目前測試ESP-BOX的固件可以進行升級,
    發(fā)表于 06-13 06:01

    如何通過ESP32S3的USB進行固件升級?

    如果通過USB口,在不需要按IO0的情況下,進行升級。目前測試ESP-BOX的固件可以進行升級,
    發(fā)表于 02-10 06:01

    如何通過ESP32S3的USB進行ESP-BOX固件升級呢?

    如果通過USB口,在不需要按IO0的情況下,進行升級。目前測試ESP-BOX的固件可以進行升級,
    發(fā)表于 03-03 09:06

    如何通過ESP32S3的USB進行固件升級?

    如果通過USB口,在不需要按IO0的情況下,進行升級。目前測試ESP-BOX的固件可以進行升級,
    發(fā)表于 03-08 09:02

    如何在全志V853開發(fā)板如何在Tina Linux中使用腳本完成定制化升級?

    ;[*] shellscript2.在swupdate文件夾下創(chuàng)建腳本,名字隨意,在腳本中寫入要實現(xiàn)的功能。例如:目前有一個方案需要升級,但
    發(fā)表于 03-20 10:02

    怎樣對ECU進行固件升級

    在汽車電子開發(fā)、測試和售后診斷中,我們經(jīng)常需要對ECU進行固件升級,即“刷新”。
    發(fā)表于 12-10 17:02 ?6260次閱讀
    怎樣對<b class='flag-5'>ECU</b><b class='flag-5'>進行</b><b class='flag-5'>固件</b><b class='flag-5'>升級</b>

    STM32通過IAP實現(xiàn)固件升級的分析與示例

    大部分MCU都可以通過IAP對片內(nèi)flash進行讀寫來實現(xiàn)固件升級。這里主要是STM32如何實現(xiàn)
    發(fā)表于 12-14 18:50 ?11次下載
    STM32<b class='flag-5'>通過</b>IAP<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>固件</b><b class='flag-5'>升級</b>的分析與示例

    基于CAN智慧云實現(xiàn)遠程ECU升級

    在日常研發(fā)中,調(diào)試已經(jīng)成為日常工作中核心的一部分。汽車電子行業(yè)中,測試時,常需對ECU固件進行刷寫。CAN智慧云基于CANDTU系列產(chǎn)品實現(xiàn)遠程刷寫
    的頭像 發(fā)表于 05-09 11:38 ?1208次閱讀
    基于CAN智慧云<b class='flag-5'>實現(xiàn)</b>遠程<b class='flag-5'>ECU</b><b class='flag-5'>升級</b>

    【解決方案】如何對物聯(lián)設(shè)備進行遠程固件升級?

    ,通過串口外接了其他的業(yè)務(wù)設(shè)備(控制器、溫控器…),并通過透傳設(shè)備將數(shù)據(jù)透傳上云。這種情況下,固件升級需求一般分兩種:1、對dtu設(shè)備、透傳網(wǎng)關(guān)等透傳上云設(shè)備自身
    的頭像 發(fā)表于 11-04 10:13 ?1695次閱讀
    【解決<b class='flag-5'>方案</b>】如何對物聯(lián)設(shè)備<b class='flag-5'>進行</b>遠程<b class='flag-5'>固件</b><b class='flag-5'>升級</b>?

    【產(chǎn)品應(yīng)用】基于CAN智慧云實現(xiàn)遠程ECU升級

    在日常研發(fā)中,調(diào)試已經(jīng)成為日常工作中核心的一部分。汽車電子行業(yè)中,測試時,常需對ECU固件進行刷寫。CAN智慧云基于CANDTU系列產(chǎn)品實現(xiàn)遠程刷寫
    的頭像 發(fā)表于 05-12 10:19 ?1710次閱讀
    【產(chǎn)品應(yīng)用】基于CAN智慧云<b class='flag-5'>實現(xiàn)</b>遠程<b class='flag-5'>ECU</b><b class='flag-5'>升級</b>

    AT32 MCU如何使用OTA通過USART實現(xiàn)固件的在線升級更新

    AT32 MCU如何使用OTA通過USART實現(xiàn)固件的在線升級更新
    的頭像 發(fā)表于 10-26 17:09 ?3353次閱讀
    AT32 MCU如何使用OTA<b class='flag-5'>通過</b>USART<b class='flag-5'>實現(xiàn)</b>對<b class='flag-5'>固件</b>的在線<b class='flag-5'>升級</b>更新

    AT32 MCU如何使用IAP通過USART實現(xiàn)固件的在線升級更新

    AT32 MCU如何使用IAP通過USART實現(xiàn)固件的在線升級更新
    的頭像 發(fā)表于 09-19 16:51 ?3141次閱讀
    AT32 MCU如何使用IAP<b class='flag-5'>通過</b>USART<b class='flag-5'>實現(xiàn)</b>對<b class='flag-5'>固件</b>的在線<b class='flag-5'>升級</b>更新

    RA4M3通過USB實現(xiàn)固件升級

    RA4M3通過USB實現(xiàn)固件升級
    的頭像 發(fā)表于 10-18 08:06 ?824次閱讀
    RA4M3<b class='flag-5'>通過</b>USB<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>固件</b><b class='flag-5'>升級</b>

    EtherCAT總線如何對從站固件進行升級

    EtherCATFOE是一種主站對從站設(shè)備固件升級的技術(shù),通過利用EtherCAT的數(shù)據(jù)鏈路層來處理數(shù)據(jù)實現(xiàn)文件傳輸,可以確保文件傳輸?shù)耐暾院蜏?zhǔn)確性,為設(shè)備的維護、
    的頭像 發(fā)表于 02-27 08:23 ?1360次閱讀
    EtherCAT總線如何對從站<b class='flag-5'>固件</b><b class='flag-5'>進行</b><b class='flag-5'>升級</b>?