999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于UDS的ECU在線重編程設計與實現

2014-08-07 12:09:48萬禮華但功禮
微處理機 2014年6期
關鍵詞:程序

萬禮華,但功禮

(重慶金美通信有限責任公司,重慶400030)

基于UDS的ECU在線重編程設計與實現

萬禮華,但功禮

(重慶金美通信有限責任公司,重慶400030)

結合國內外OEM廠商廣泛采用的診斷協議UDS,對Can總線下的ECU在線重編程進行研究和設計,并對具體的軟件實現進行闡述。本方案能防止ECU在線重編程過程中出現異常時,ECU被鎖死;可自恢復,刷新功能永不丟失。

統一診斷協議;重編程;引導程序;第一引導程序;第二引導程序

1 引 言

汽車電子產品開發對安全性、可靠性指標要求很高,同時ECU的開發周期較長,所以程序更新的情況在開發過程及售后都可能出現。為了對ECU硬件本身不造成破壞,同時方便售后服務,汽車行業制定了標準的通信協議,采用專門的診斷設備,通過標準的通信接口對ECU控制軟件或標定數據更新。當前,汽車上的各個ECU之間都具有一個或多個整車通信網絡實現各ECU之間的控制及通信。通常,這些汽車ECU之間都具有標準的診斷協議,能通過診斷儀在整車通信網絡實現故障碼的讀取,在整車通信網絡上通過診斷儀實現ECU控制軟件更新及標定數據更新,能方便ECU控制軟件開發及售后服務。國內外各大汽車廠商廣泛使用的一種車載診斷協議是UDS(汽車通用診斷服務)。

2 基于UDS的ECU在線重編程研究

汽車ECU重編程分為離線重編程、在線重編程兩種方法。在線重編程是在ECU安裝在整車網絡上的代碼更新,離線重編程是在ECU未安裝在整車網絡上的代碼更新。本方案中的代碼重編程是采用基于CAN總線UDS協議的在線重編程技術。

ECU的在線重編程是指ECU安裝在整車網絡中時,通過整車通信網絡刷新其中的應用程序、標定數據、以及Bootloader本身(SBL),從而實現改善控制器性能、提高安全性、改善排放、改善燃油經濟性。當前,ECU供應商、OEM廠商、授權售后技術中心、技術工程師通過連接到整車網絡的診斷儀實現ECU的在線重編程。通過這種方法能方便、安全、經濟地實現應用軟件、標定數據、bootloader本身的刷新。Bootloader、應用軟件采用統一的診斷協議(即UDS)與診斷儀通信。

Bootloader是一段固化在FLASH中的代碼,它和標定數據、應用程序位于FLASH中不同的分塊中,這樣,能夠分別單獨地擦除Bootloader本身(SBL)、標定數據和應用程序。為了簡化ECU復位后的工作流程,本方案中應用程序的復位相量和Bootloader的復位相量相同,上電復位后,ECU首先運行Bootlader,然后跳轉到應用程序。

3 基于UDS的ECU在線重編程設計與實現

3.1 總體架構

方案實現的ECU在線重編程Bootloader由Bootloader(FBL)和Bootloader(SBL)兩部分組成FBL用于更新SBL,其代碼放在代碼保護區;SBL用于更新標定數據和應用程序。由于FBL放在代碼保護區,保證FBL代碼永遠不會被破壞,FBL通過BDM固化在FLASH中。SBL存放在代碼區,能夠通過診斷儀進行更新。本方案中所指的Bootloader本身更新指的是SBL更新。采用這種方法能夠保證用戶在更新Bootloader本身(SBL)的過種中,出現突然復位、供電異常、與診斷儀通訊失敗、FLASH擦寫錯誤等異常情況時,ECU不會被鎖死,重新上電后通過診斷儀仍然能夠更新Bootloader本身(SBL)及應用程序和標定數據。

與傳統的離線模式重編程方式不同,由于整車通信數據在整車網絡中傳輸,必須考慮其它控制器的反應,必須對目標ECU作出正確識別,必須保證數據的完整性等。基于UDS協議的ECU在線重編程包括以下步驟:

(1)進入擴展會話(extended session);

(2)識別ECU:識別ECU ID,FBL軟件ID,SBL軟件ID,應用軟件ID,標定數據ID;

(3)關閉網絡上所有ECU的故障識別、存儲功能,在線重編程期間禁止檢測、記錄故障;

(4)關閉整車通信數據傳遞:使網絡上只有診斷消息和網絡管理消息傳遞,為在線重編程讓出足夠的帶寬;

(5)解鎖ECU,使ECU能夠進入編程會話;

(6)進入編程會話(programming session),從bootloader進入編程會話;從應用程序進入編程會話;

(7)擦除FLASH數據:擦除SBL代碼或擦除標定數據/應用程序;

(8)下載數據:下載新的程序、數據到ECU的FLASH中;

(9)檢驗數據:檢查下載的數據,如果檢驗正確,使ECU_Status有效;

(10)復位ECU:軟件復位ECU;

(11)開啟網絡上ECU的故障識別、存儲功能:重新開啟網絡上其它控制器的故障識別與存儲功能;

(12)開啟整車通信數據傳遞:重新開啟網絡上其它控制器實現整車通信數據傳遞;

3.2 軟件設計

3.2.1 ECU工作流程

ECU上電復位后首先進入FBL,測試Ecu_Status標志,如果Ecu_Status=0xE0,ECU跳轉到SBL,否則程序在FBL中運行;在SBL中,測試Ecu_Status標志,Ecu_Status>=0xF0,ECU跳轉到APP,否則程序在SBL中運行。ECU工作流程如圖1所示。

ECU切換到編程會話SBL0x85。ECU可以在應用程序中進入編程會話SBL0x85,也可以在SBL中進入編程會話SBL0x85。程序在應用程序中運行時,ECU收到進入編程會話命令(DSC85),并且ECU未處于工作狀態時,ECU進入編程會話SBL0x85,控制權轉移到SBL中。程序在SBL中運行時,ECU收到進入編程會話命令(DSC85),ECU直接進入編程會話SBL0x85,控制權在SBL中。

ECU切到編程會話FBL0x85。ECU可以在SBL中進入編程會話FBL0x85,也可以在FBL中進入編程會話FBL0x85。程序在SBL中運行時,ECU收到擦除命令Ecu_Status時,ECU直接進入編程會話FBL0x85,控制權轉移到FBL中。程序在FBL中運行時,ECU收到進入編程會話命令(DSC85),ECU直接進入編程會話FBL0x85,控制權在FBL中。

應用程序在線重編程工作流程:診斷儀通過CAN總線向ECU發送S19文件格式的二進制文件,ECU將下載的代碼燒到應用程序區域,ECU應用程序代碼更新,下次上電或復位后,運行新的應用程序。

3.2.2 ECU中程序更新功能的相關UDS服務

ECU程序更新需要的功能必須與相應的UDS協議一致,這樣才能保證ECU能通過診斷儀進行代碼更新。ECU程序更新功能的相關UDS服務如表1所示。

圖1 ECU工作流程圖

表1 ECU程序更新功能相關UDS服務

3.2.3 ECU軟件內存映射

采用FreeScale MC9S12XEQ512微控制器,ECU軟件的內存映射圖如圖2所示。FBL程序區為0x780000至0x783fff,大小為16K;FBL中斷向量區為0x7ff400至0x7ff7ff,大小為1K;SBL程序區為0x784000至0x787fff,大小為16K;SBL中斷向量區為0x7ff800至0x7ffbff,大小為1K;APP程序區為0x7b0000至0x7fbfff,大小為304K;APP中斷向量區為0x7ffc00至0x7fffff,大小為1K;標定數據區為0x788000至0x7affff,大小為160K。其中FBL程序區及FBL中斷向量區放在代碼保護區,在線重編程過程中不會被破壞,以防止在線重編程異常時,重新上電后通過FBL仍然能夠重新進行SBL、標定數據/APP程序在線重編程。S12系列單片機通過修改中斷向量基地址寄存器IVBR進行中斷向量表重映射,為FBL、SBL、APP分別分配不同的中斷向量表。SBL和APP中斷是指除復位中斷外的其它中斷。為了簡化程序工作流程,SBL中程序復位,APP中程序復位都將調用FBL中的復位中斷程序。

Ecu_Status為0x00、0xff時SBL、APP程序被禁止運行,程序控制權在FBL中;Ecu_Status為0xe0時,APP程序被禁止運行,程序控制權在SBL中;Ecu_Status為0xf0時,SBL、APP程序允許運行,程序控制權在APP中。ECU狀態“Ecu_Status”管理如下:

圖2 ECU軟件內存映射圖

重編程開始時,Ecu_Status被置為0x00;

FLASH擦除完成時,Ecu_Status被置為0xff;

重編程標定數據/應用程序完成時,Ecu_Status被置為0xf0;

重編程Bootloader(SBL)完成時,Ecu_Status被置為0xe0;

LOG信息為重編程記錄信息,其中每條記錄包括48字節數據,1K能記錄21條重編程記錄信息。每一條記錄信息包括24字節的ECU識別信息和24字節的重編程版本信息。

3.2.4 ECU的在線重編程請求服務處理

ECU在收到診斷儀發出的請求服務后,首先對請求服務的合法性進行判斷,如圖3所示,然后對有效的請求服務進行處理,如圖4所示。

圖3 請求服務過濾處理

圖4 有效服務處理

4 結束語

提出了一種基于UDS的ECU在線重編程方案。提出了ECU和雙Bootloader方案,FBL放在代碼保護區,SBL放在代碼區。在APP更新及Bootloader自身更新過程中,出現各種異常,重新上電后,ECU不會死鎖,Bootloader可自恢復,刷新功能永不丟失。

[1]ISO15765,2004,Road vehicles—Diagnostics on Controller Aera Networks(CAN)[S].Switzerland:ISO,2004.

[2]ISO14229,2006,Road vehicles—Unified diagnostic services(UDS)[S].Switzerland:ISO,2006.

[3]廖洪良,孫澤昌.基于KWP2000的ECU在線編程研究及應用[J].微計算機信息,2008,24(3):250-253.LIAO Hong lang,SUN Ze chang.Research and application of the ECU on-board reprogramming based on KWP2000[J].CONTROL&AUTOMATION,2008,24(3):250-253.

[4]崔俊鋒,袁濤.車身混合網絡中CAN/LIN網關的設計與實現[J].微計算機信息,2006,(3Z):201-204. CUIJun feng,YUAN Tao.Design and Implementation of a CAN/LIN Gateway in Automotive Mixing Body Network[J].CONTROL&AUTOMATION,2006,3(2):201-204.

[5]韓鑫,鮑可進.CAN總線網絡層協議棧開發測試[J].計算機工程,2011,37(15):232-237.HAN Xin,BAO Ke-jin.Development and Test of CAN Bus Network Layer Protocol Stack[J].Computer Engineering,2011,37(15):232-237.

[6]張宏,詹德凱.基于CAN總線的汽車故障診斷系統研究與設計[J].汽車工程,2008,30(10):934-937.ZHANG Hong,ZHAN De kai,LIN Chang jia.Design of Vehicle Fault Diagnosis System Based on CAN Bus[J].Automotive Engineering,2008,30(10):934-937.

Research and Im p lement of ECU on Board Reprogramm ing Based on UDS

WAN Li-hua,DAN Gong-li
(Chongqing Jinmei Communication Co.,Ltd.,Chongqing 400030,China)

In this paper,the research and design for the ECU on board reprogramming are conducted according to diagnostic protocol UDSwhich iswidely used bymanymajor OEMs in the world,and some software design details are discussed as well.It can avoid dead lock while some abnormal error occurs during ECU on board reprogramming.The ECU can perform recovery itself and the refresh function never loses.

UDS;Reprogramming;Bootloader;FBL;SBL

10.3969/j.issn.1002-2279.2014.06.017

TP19

:A

:1002-2279(2014)06-0058-04

萬禮華(1974-),男,重慶市人,碩士,高級工程師,主研方向:嵌入式軟件開發,圖像處理等。

2014-04-15

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 久久精品国产一区二区小说| 国产99在线| 亚洲无码精品在线播放| 色综合日本| 永久免费无码成人网站| 中文一级毛片| 日韩最新中文字幕| 天天躁狠狠躁| 亚洲swag精品自拍一区| 亚洲日韩高清无码| 国产精品护士| 色天天综合| 国产剧情一区二区| 精品亚洲国产成人AV| 国产精品主播| 无码有码中文字幕| 亚洲第一区在线| 久久免费视频6| 久久久久久国产精品mv| 19国产精品麻豆免费观看| 色综合天天综合中文网| 午夜精品影院| 91成人免费观看| 欧美一区精品| 九月婷婷亚洲综合在线| 青青青国产视频手机| 华人在线亚洲欧美精品| 欧美色综合久久| 国产精品99久久久| 亚洲精品国产日韩无码AV永久免费网| 国产真实乱子伦视频播放| 国产精女同一区二区三区久| 久久久四虎成人永久免费网站| 欧美视频二区| 日本午夜视频在线观看| 亚洲69视频| 最新痴汉在线无码AV| jizz亚洲高清在线观看| 亚洲成人www| 国产免费久久精品99re不卡| 亚洲欧洲AV一区二区三区| 免费a级毛片18以上观看精品| 91精品情国产情侣高潮对白蜜| 亚洲香蕉在线| 亚洲国产精品无码AV| 亚洲丝袜第一页| 国产中文一区二区苍井空| 亚洲视频免费在线| 国产欧美日韩在线一区| 天堂成人av| 久久久久人妻精品一区三寸蜜桃| 毛片免费视频| 在线观看国产黄色| 国产视频你懂得| 欧美啪啪一区| 高清不卡毛片| 91尤物国产尤物福利在线| 久久久久亚洲av成人网人人软件| 直接黄91麻豆网站| 国产成人高精品免费视频| 日韩国产欧美精品在线| 亚洲AⅤ综合在线欧美一区| 正在播放久久| 国产剧情伊人| 日韩 欧美 小说 综合网 另类| 91久久夜色精品国产网站| 日韩亚洲高清一区二区| 欧美特黄一级大黄录像| 特级精品毛片免费观看| 在线不卡免费视频| 手机在线免费不卡一区二| 中日无码在线观看| 91精品人妻一区二区| 国产精品页| 色婷婷在线播放| 色妞永久免费视频| 国产欧美精品专区一区二区| 最新日本中文字幕| 99热亚洲精品6码| 欧美另类图片视频无弹跳第一页| 毛片久久久| 日韩性网站|