亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于車載控制器BootLoader 的數(shù)據(jù)備份刷寫軟件方案實(shí)現(xiàn)

        2022-11-07 02:16:34陶媛媛
        汽車電器 2022年9期
        關(guān)鍵詞:程序功能

        陶媛媛,杜 彬,田 彬

        (陜西重型汽車有限公司汽車工程研究院,陜西 西安 710200)

        汽車電子領(lǐng)域的ECU(Electronic Control Unit,電子控制單元)大多為普通單片機(jī),其BootLoader(簡(jiǎn)稱BT)主要負(fù)責(zé)應(yīng)用程序的升級(jí)。隨著智能網(wǎng)聯(lián)汽車時(shí)代的不斷發(fā)展,ECU軟件可以通過OBD(On Board Diagnostics,車載診斷系統(tǒng))接口,利用總線通信,將升級(jí)包傳輸給BootLoader進(jìn)行寫Flash操作,完成程序升級(jí),也可以通過OTA(Over the Air Technology,空中下載技術(shù))進(jìn)行遠(yuǎn)程程序升級(jí)。

        在程序升級(jí)過程中,可能會(huì)出現(xiàn)一些問題,導(dǎo)致應(yīng)用軟件或數(shù)據(jù)不能正常使用,如程序更新流程意外終止,軟件數(shù)據(jù)包與ECU不匹配等,此時(shí)會(huì)影響到車輛功能的正常使用,降低整車性能。為防止出現(xiàn)問題時(shí)ECU的基本功能失效,本文采用一種基于車載以太網(wǎng)的數(shù)據(jù)備份刷寫策略,實(shí)現(xiàn)恢復(fù)上一版本軟件和數(shù)據(jù)的功能,解決ECU功能異常問題,提升車載控制器性能。

        1 備份刷寫方案及實(shí)現(xiàn)

        備份刷寫的方案實(shí)現(xiàn)主要包括Flash區(qū)域劃分和不同情況下的數(shù)據(jù)備份流程。

        1.1 Flash區(qū)域劃分

        為了實(shí)現(xiàn)異常情況的數(shù)據(jù)備份升級(jí),該策略要求ECU的Flash區(qū)域容量至少為應(yīng)用程序的2倍,將Flash區(qū)域劃分為兩塊完全獨(dú)立的空間,NA(Normal Area)和SA(Spare Area),NA為軟件正常運(yùn)行的區(qū)域,SA為NA程序和數(shù)據(jù)的備份區(qū)域。以Infineon TC299芯片為例,BootLoader、NA和SA軟件數(shù)據(jù)的內(nèi)存分配如圖1所示。

        圖1 軟件數(shù)據(jù)內(nèi)存分配方案

        應(yīng)用程序運(yùn)行在NA區(qū),SA區(qū)作為NA區(qū)的備份,可以將軟件和數(shù)據(jù)從SA區(qū)回滾到NA區(qū)。此方案不受硬件的限制,并且應(yīng)用程序設(shè)計(jì)時(shí)無需考慮位置無關(guān)代碼的設(shè)計(jì),不受硬件或編譯器的限制,通用性強(qiáng)。

        1.2 數(shù)據(jù)備份流程

        Flash的NA區(qū)和SA區(qū)均是獨(dú)立的區(qū)域,可以存儲(chǔ)完整的APP程序,根據(jù)備份刷寫方式,將數(shù)據(jù)備份流程分為自動(dòng)回滾和手動(dòng)回滾,以下分別針對(duì)這兩種方式詳細(xì)介紹備份流程。

        1.2.1 自動(dòng)回滾

        自動(dòng)回滾方案適用于升級(jí)意外中斷情況,加入自動(dòng)回滾后,每次上電或復(fù)位,系統(tǒng)先運(yùn)行BootLoader程序,判斷程序更新標(biāo)志位是否有效,若無效,則在NA區(qū)運(yùn)行APP程序;若有效,則執(zhí)行BT刷寫流程。進(jìn)入BT刷寫流程,判斷NA區(qū)軟件數(shù)據(jù)標(biāo)志位APP_NA_Flag是否有效,若有效,則先將NA區(qū)數(shù)據(jù)備份到SA區(qū),然后擦除NA區(qū)數(shù)據(jù),下載NA區(qū)刷寫文件,刷寫升級(jí)完成后將APP_NA_Flag置為有效,運(yùn)行APP程序;若APP_NA_Flag無效,則判斷APP_SA_Flag是否有效,若無效,則停留在BootLoader程序中,若有效,則將SA數(shù)據(jù)拷貝到NA區(qū),然后執(zhí)行擦除NA區(qū)以及后續(xù)步驟,最后運(yùn)行APP程序,具體流程如圖2所示。

        圖2 自動(dòng)回滾流程

        程序升級(jí)出現(xiàn)中斷時(shí),ECU持續(xù)監(jiān)測(cè)總線報(bào)文,若5s內(nèi)總線無任何操作,APP_NA_Flag置0,為無效,ECU會(huì)產(chǎn)生復(fù)位,斷電或上位機(jī)的復(fù)位請(qǐng)求也可以使ECU產(chǎn)生復(fù)位。重新上電或復(fù)位后,系統(tǒng)從BootLoader程序開始運(yùn)行,由于上一次的升級(jí)被中斷,此時(shí)系統(tǒng)會(huì)按照自動(dòng)備份回滾流程,將SA區(qū)域的程序數(shù)據(jù)回滾至NA區(qū),實(shí)現(xiàn)數(shù)據(jù)恢復(fù)。

        1.2.2 手動(dòng)回滾

        手動(dòng)回滾適用于控制器可以正常更新軟件數(shù)據(jù),但當(dāng)前更新版本為測(cè)試版本或者出現(xiàn)功能問題需要恢復(fù)到上一個(gè)軟件版本的情況,此時(shí),新的應(yīng)用程序和數(shù)據(jù)已經(jīng)被成功刷寫到NA區(qū),程序可以正常運(yùn)行在NA區(qū)。

        手動(dòng)回滾流程如下:上位機(jī)設(shè)置手動(dòng)回滾,執(zhí)行刷寫流程,收到啟動(dòng)手動(dòng)回滾例程請(qǐng)求后,將手動(dòng)回滾標(biāo)志位FlashMode置1,執(zhí)行復(fù)位,復(fù)位后檢查手動(dòng)回滾標(biāo)志位FlashMode有效,判斷APP_SA_Flag是否有效,若有效,則將SA區(qū)的數(shù)據(jù)備份回滾到NA區(qū),若無效,則系統(tǒng)重啟。手動(dòng)回滾成功后NA區(qū)有效,復(fù)位后BootLoader將引導(dǎo)運(yùn)行NA區(qū)軟件,具體流程圖如圖3所示。

        圖3 手動(dòng)回滾流程

        2 臺(tái)架測(cè)試及環(huán)境搭建

        搭建臺(tái)架測(cè)試環(huán)境,通過車載以太網(wǎng)DoIP協(xié)議的Boot-Loader刷寫流程,驗(yàn)證控制器程序備份回滾機(jī)制。

        對(duì)本次設(shè)計(jì)的備份刷寫方案進(jìn)行測(cè)試。給控制器ECU上電,將BootLoader引導(dǎo)程序刷寫進(jìn)控制器中,然后通過通信設(shè)備將控制器下位機(jī)與電腦端的上位機(jī)進(jìn)行通信連接,完成程序的升級(jí)更新。

        測(cè)試的軟硬件環(huán)境及工具如表1和圖4所示。

        圖4 測(cè)試環(huán)境

        表1 軟硬件測(cè)試工具

        本次測(cè)試基于控制器車載以太網(wǎng)DoIP協(xié)議,在電腦端用上位機(jī)模擬診斷儀對(duì)控制器ECU進(jìn)行BT刷寫,同時(shí)通過Wireshark抓包的方式記錄BootLoader刷寫流程log,對(duì)測(cè)試log進(jìn)行分析,驗(yàn)證自動(dòng)回滾和手動(dòng)回滾機(jī)制。

        3 測(cè)試數(shù)據(jù)分析

        3.1 自動(dòng)回滾

        為保證ECU能正常工作,控制器需要自動(dòng)開啟回滾功能,自動(dòng)回滾功能的開啟需要滿足兩個(gè)條件。

        1)程序更新過程中遇到問題,如舊程序擦除成功后升級(jí)流程中斷,完整性校驗(yàn)或兼容性校驗(yàn)失敗,檢測(cè)到內(nèi)存溢出報(bào)出錯(cuò)誤等。

        2)遇到問題后5s內(nèi)未收到任意診斷報(bào)文。

        以完整性校驗(yàn)不通過為例,如圖5所示,應(yīng)用程序已刷寫至ECU中,通過31服務(wù)檢查編程完整性時(shí)得到否定響應(yīng),CRC校驗(yàn)失敗,自動(dòng)啟動(dòng)回滾流程,將SA區(qū)的程序拷貝至NA區(qū),進(jìn)行備份程序的刷寫,刷寫成功后someip報(bào)文正常收發(fā),自動(dòng)回滾完成。

        圖5 完整性校驗(yàn)失敗后自動(dòng)回滾

        3.2 手動(dòng)回滾

        手動(dòng)回滾功能的開啟需要手動(dòng)設(shè)置回滾標(biāo)志位,程序刷新完成后,遇到應(yīng)用功能錯(cuò)誤、軟件版本錯(cuò)誤或程序測(cè)試完成后需要對(duì)控制器進(jìn)行恢復(fù)等情況時(shí),開啟手動(dòng)回滾功能使控制器中程序回滾到上一版本。

        以軟件版本不正確為例,如圖6所示,程序刷寫成功后,判斷軟件版本錯(cuò)誤,需開啟手動(dòng)回滾功能,ECU在收到啟動(dòng)回滾例程請(qǐng)求:31 01 F5 1A后,設(shè)置手動(dòng)回滾標(biāo)志位FlashMode為1,執(zhí)行手動(dòng)回滾操作,手動(dòng)回滾成功后控制器回到上一版本的程序,報(bào)文可正常收發(fā)。

        圖6 軟件版本不正確后手動(dòng)回滾

        測(cè)試結(jié)果表明:本文設(shè)計(jì)的程序備份升級(jí)方案,能夠根據(jù)不同的情況實(shí)現(xiàn)自動(dòng)回滾和手動(dòng)回滾功能,保證控制器應(yīng)用功能正常。

        4 結(jié)論

        本文基于車載控制器BootLoader設(shè)計(jì)了一種數(shù)據(jù)備份刷寫方案,并搭建測(cè)試環(huán)境記錄測(cè)試數(shù)據(jù)進(jìn)行分析驗(yàn)證。結(jié)果表明:該方案可以實(shí)現(xiàn)自動(dòng)回滾和手動(dòng)回滾功能,能夠解決ECU的功能異常問題,極大提高了控制器的穩(wěn)定性。

        猜你喜歡
        程序功能
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        試論我國(guó)未決羈押程序的立法完善
        失能的信仰——走向衰亡的民事訴訟程序
        “程序猿”的生活什么樣
        關(guān)于非首都功能疏解的幾點(diǎn)思考
        英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
        懷孕了,凝血功能怎么變?
        媽媽寶寶(2017年2期)2017-02-21 01:21:24
        “簡(jiǎn)直”和“幾乎”的表達(dá)功能
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
        国产av精选一区二区| 伊人精品在线观看| 亚洲综合一| 国产女人av一级一区二区三区 | 在线观看午夜视频一区二区| 性色av浪潮av色欲av| 色999欧美日韩| 亚洲精品成人久久av| 日本精品女优一区二区三区| 成人免费一区二区三区| 久久99久久久无码国产精品色戒| 国产一级自拍av播放| 蜜桃视频插满18在线观看| 性生交大片免费看淑女出招 | 亚洲精品一区二区三区av| 97成人精品视频在线| 国产精品自在拍在线拍| 欧美一级色图| 亚洲av毛片一区二区久久| 本道天堂成在人线av无码免费 | 精品久久综合一区二区| av网址在线一区二区| 久久99国产精品久久| aaaaa级少妇高潮大片免费看| 亚洲av中文aⅴ无码av不卡| 在线中文字幕一区二区| 色噜噜狠狠综曰曰曰| 在线视频这里只有精品| 熟妇人妻丰满少妇一区| 亚洲开心婷婷中文字幕| 国产95在线 | 欧美| 完整在线视频免费黄片| 亚洲av人片在线观看| 国产麻传媒精品国产av| 国产精品一区二区久久乐下载| 久久色悠悠综合网亚洲| 丝袜美腿一区二区三区| 中文字幕欧美一区| av网站免费在线不卡| 大陆国产乱人伦| 国产精品熟妇视频国产偷人|