當(dāng)前位置:首頁 > 公眾號(hào)精選 > 糖果Autosar
[導(dǎo)讀]來源:Smah ?????? 編輯整理:糖果Autosar 基于UDS的BootLoader下載,可以支持ECU生命周期的無限次刷寫,通過CAN網(wǎng)絡(luò)進(jìn)行無需拆殼和DEBUG口的應(yīng)用程序刷寫,本文介紹了刷寫服務(wù)和是三個(gè)階段的刷寫流程。也可通過無線模塊實(shí)現(xiàn)空中升級(jí),即OTA技術(shù)。 通過下面兩


來源:Smah       

編輯整理:糖果Autosar


基于UDS的BootLoader下載,可以支持ECU生命周期的無限次刷寫,通過CAN網(wǎng)絡(luò)進(jìn)行無需拆殼和DEBUG口的應(yīng)用程序刷寫,本文介紹了刷寫服務(wù)和是三個(gè)階段的刷寫流程。也可通過無線模塊實(shí)現(xiàn)空中升級(jí),即OTA技術(shù)。

通過下面兩張圖了解一下bootloader的軟件堆棧架構(gòu)及刷寫的流程。

  • 下圖為bootloader程序架構(gòu)圖:


  • 下圖為基于UDS服務(wù)刷寫的Bootload的刷寫流程圖:



1 為什么要搞Bootloader?為什么要基于UDS搞Bootloader

假如你的控制器有外殼,卻沒有設(shè)計(jì)bootloader的話,每次更新ECU的程序,你都需要把外殼拆開,用燒寫器來更新程序。有了bootloader,你就可以通過CAN線來更新程序了。更方便些的話,甚至可以通過OTA進(jìn)行遠(yuǎn)程升級(jí)。

那為什么使用UDS呢?主要是為了規(guī)范bootloader的全過程。比如燒寫小明牌ECU時(shí),我們肯定希望其他牌子的ECU處于一個(gè)靜默的狀態(tài),都歇一歇,這就需要一個(gè)大家共同執(zhí)行的標(biāo)準(zhǔn)來進(jìn)行規(guī)范,什么時(shí)候停發(fā)數(shù)據(jù),什么時(shí)候不能再儲(chǔ)存DTC了等等。

又比如在調(diào)試時(shí),大家肯定希望你的控制器經(jīng)由CAN燒寫的過程是大家都能看得懂的,是滿足于某種規(guī)范的。由此,UDS在設(shè)計(jì)時(shí)考慮了bootloader的需求,專門為bootloader設(shè)計(jì)了幾個(gè)服務(wù),供大家使用。主機(jī)廠在發(fā)需求時(shí)自然就要求大家要在UDS規(guī)范的基礎(chǔ)上完成bootloader功能了。

2 Bootloader應(yīng)支持的UDS服務(wù)

顯然bootloader不需要支持19/14等故障類服務(wù)。

在boot程序中,10/27/11/3E這樣的基礎(chǔ)診斷服務(wù)需要支持,22/2E讀寫DID的服務(wù)需要支持,31/34/36/37這4個(gè)bootloader主打服務(wù)需要支持,共10個(gè)。

在app段程序中,85和28服務(wù)需要支持,保證暫停CAN正常通信,暫停記錄DTC,讓被升級(jí)設(shè)備專心升級(jí)。

3 Bootloader——三段式

(1)預(yù)編程階段

  1. 3E TP報(bào)文。

  2. 10服務(wù)切換到03擴(kuò)展模式。

  3. 85服務(wù)和28服務(wù),關(guān)DTC和非診斷報(bào)文。使整個(gè)CAN網(wǎng)絡(luò)處于安靜的狀態(tài)。這是對(duì)整車網(wǎng)絡(luò)進(jìn)行操作的,一般都是以功能尋址的方式來發(fā)送。注意先用85服務(wù)關(guān)閉DTC,再使用28服務(wù)關(guān)報(bào)文。

(2)主編程階段

  1. 10服務(wù)切換到編程模式,這里要注意,正確的方式是App段程序回復(fù)0x78 NRC,接下來跳轉(zhuǎn)到boot段程序,最后由Boot段程序來回復(fù)10 02的肯定響應(yīng)。錯(cuò)誤的方式是由App段回復(fù)10 02的肯定響應(yīng),再進(jìn)行跳轉(zhuǎn)。

  2. 讀取一個(gè)DID,tester要判斷一下返回值。返回值里面可能包含密鑰的一部分信息。

  3. 27服務(wù),解鎖,通過安全驗(yàn)證。

注意10 02服務(wù)不應(yīng)直接進(jìn)行肯定響應(yīng),存在風(fēng)險(xiǎn)

  1. 寫DID指紋,標(biāo)記寫軟件人的身份,ECU回復(fù)寫指紋成功。(根據(jù)OEM要求來執(zhí)行)

  2. 31服務(wù)-擦除Flash。ECU肯定響應(yīng),擦除成功。

  3. 34服務(wù),請(qǐng)求數(shù)據(jù)下載,ECU回復(fù)確認(rèn)最大塊大小。

  4. 36服務(wù),開始傳輸數(shù)據(jù)。每個(gè)塊傳輸完成后,ECU肯定響應(yīng)。判斷是否還有更多塊需要下載。最多可以支持255個(gè)塊。

  5. 37服務(wù),請(qǐng)求退出傳輸。ECU肯定響應(yīng)。

  6. 31服務(wù)-校驗(yàn)APP段程序,檢查編程一致性/完整性。ECU肯定響應(yīng)。校驗(yàn)成功。

  7. 若有更多塊需要下載,重新執(zhí)行31(擦除Flash區(qū)域)-34-36-37-31(校驗(yàn))服務(wù)。若無,往下執(zhí)行。

  8. 11服務(wù),ECU復(fù)位。之后應(yīng)直接跳轉(zhuǎn)到新下載的APP段程序中。

(3)后編程狀態(tài)

  1. 10服務(wù)切換到03擴(kuò)展會(huì)話。

  2. 執(zhí)行28服務(wù)和85服務(wù),使能非診斷報(bào)文和DTC。這是對(duì)整車網(wǎng)絡(luò)進(jìn)行操作的,一般都是以功能尋址的方式來發(fā)送。注意先執(zhí)行28,后執(zhí)行85,避免DTC誤報(bào)。

  1. 27服務(wù),安全校驗(yàn),準(zhǔn)備寫入數(shù)據(jù)。

  2. 2E服務(wù),將編程信息寫入到ECU中。

  3. 10服務(wù),退回01默認(rèn)會(huì)話。結(jié)束。

4 BootLoader的啟動(dòng)順序與轉(zhuǎn)換流程

以下流程僅作為參考,有很多不規(guī)范之處。歡迎大家留言探討。

  1. ECU上電或復(fù)位后,先進(jìn)入Boot段。從Flash/EEPROM中讀取 App有效標(biāo)志,運(yùn)行boot標(biāo)志 。

  2. 判斷 運(yùn)行boot標(biāo)志 ,若為1,則進(jìn)入Boot段的編程會(huì)話(安全等級(jí)為上鎖),之后寫Flash/EEPROM(不安全操作), 運(yùn)行boot標(biāo)志 清零。若S3定時(shí)器超時(shí)則退回Boot段默認(rèn)會(huì)話。

  3. 經(jīng)過安全訪問進(jìn)入Level2解鎖狀態(tài),開始執(zhí)行App內(nèi)存擦除,擦除后 App有效標(biāo)志 清零(不安全操作)。

  4. 開始燒寫。燒寫成功后 運(yùn)行boot標(biāo)志 寫0,App有效標(biāo)志 寫1。

2*. 判斷 運(yùn)行boot標(biāo)志 ,若為0,則進(jìn)入Boot段的默認(rèn)會(huì)話。

3*. 50ms后判斷 App有效標(biāo)志 ,若為1,則 跳轉(zhuǎn)到 App段默認(rèn)會(huì)話。實(shí)現(xiàn)時(shí)使用匯編指令執(zhí)行APP段程序;若為0,退回Boot段默認(rèn)會(huì)話,且不再判斷 App有效標(biāo)志,不會(huì)再嘗試進(jìn)入App段。

4*. App段程序若收到了編程會(huì)話請(qǐng)求, 運(yùn)行boot標(biāo)志寫1 ,隨即執(zhí)行ECU復(fù)位,這樣會(huì)重新進(jìn)入boot段程序。

注:從BOOT跳入APP前需要判斷APP的數(shù)據(jù)完整性,例如進(jìn)行CRC校驗(yàn)。

5 問題點(diǎn)

Q:假如燒進(jìn)去了不良App段程序,無法返回boot段程序怎么辦?

A:參照電腦的開機(jī)方式,在ECU開機(jī)之后,預(yù)留很短的一段時(shí)間維持在boot狀態(tài),在這段時(shí)間內(nèi),若收到指定報(bào)文(比如,電腦是按住F8),那么就不跳轉(zhuǎn)到App段了。

Q:運(yùn)行boot標(biāo)志和App有效標(biāo)志為了安全起見,應(yīng)該保存到哪里?

A:運(yùn)行boot標(biāo)志可以放置在RAM中,由Boot和App共用。

Q:上文圖中的CAN數(shù)據(jù)實(shí)例,為什么出現(xiàn)了兩次CRC的校驗(yàn)?CRC校驗(yàn)是對(duì)哪些數(shù)據(jù)的校驗(yàn)?

A:OEM不希望ECU中保存有可以擦寫Flash的代碼,所以BootLoader需要在燒錄App之前,先把擦寫Flash的代碼通過UDS燒寫到RAM中,燒完了之后進(jìn)行一下31服務(wù)下的CRC校驗(yàn)。之后燒錄ECU的App程序,App可能會(huì)因?yàn)榈刂凡贿B續(xù)而分為很多段下載。下載完畢后需要進(jìn)行總的CRC校驗(yàn)。不管哪次校驗(yàn),CRC所校驗(yàn)的數(shù)據(jù)是代碼的數(shù)據(jù)段,即36服務(wù)中傳輸?shù)挠行?shù)據(jù)。


點(diǎn)擊文章開頭上方藍(lán)字可關(guān)注微信公眾號(hào)『糖果Autosar』,分享文章至朋友圈或者點(diǎn)在看,通過微信『cloud2sunshine』備注“加群”加入汽車電子與AUTOSAR技術(shù)交流群,備注車電子資料領(lǐng)取技術(shù)資料。

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問題,請(qǐng)聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉