System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及控制器軟件更新,尤其涉及一種ecu無感刷新方法及相關裝置。
技術介紹
1、隨著汽車電子技術的不斷發展,電子控制單元(electronic?control?unit,ecu)作為汽車的核心控制部件,其性能和功能也在不斷提升。為了確保ecu的穩定性和可靠性,同時滿足日益增長的駕駛需求,對ecu進行定期的軟件更新和刷新變得尤為重要。然而,傳統的ecu刷新方法往往需要拆卸ecu或中斷其正常運行,這不僅增加了維修成本和時間成本,還可能對車輛的正常使用造成不便。因此,開發一種能夠在不影響車輛正常運行的情況下實現ecu無感刷新的方法顯得尤為重要。
技術實現思路
1、鑒于上述問題,本申請提供了一種ecu無感刷新方法及相關裝置,用于實現ecu無感刷新的目的。具體方案如下:
2、本申請第一方面提供一種ecu無感刷新方法,包括:
3、運行第一分區內的第一引導啟動程序,以便所述第一引導啟動程序在監測到軟件刷新請求時,基于為目標程序預配置的地址分配信息,將所述目標程序刷入第二分區的對應地址處,其中,所述軟件刷新請求用于將所述電子控制單元的軟件程序更新為所述目標程序,所述第一分區和所述第二分區通過對所述電子控制單元的存儲區進行劃分得到;
4、在所述目標程序刷新完成后切換到所述第二分區,以依次運行所述第二分區內的第二引導啟動程序和所述第二分區內的目標程序,其中,在所述第二分區內的目標程序運行之前,所述第二引導啟動程序能夠基于所述地址分配信息對所述第二分區內的目標程序
5、若所述第二分區內的目標程序未成功運行,則運行所述第二分區內的默認程序,其中,所述默認程序為包含所述電子控制單元的基本功能且能夠正常運行的程序。
6、可選的,所述目標程序由多個數據段組成,每個所述數據段均預配置有地址分配信息;
7、所述基于為目標程序預配置的地址分配信息,將所述目標程序刷入第二分區的對應地址處,包括:
8、基于為所述多個數據段分別預配置的地址分配信息,將所述多個數據段分別刷入所述第二分區的對應地址處。
9、可選的,為每個所述數據段預配置的地址分配信息存儲于為該數據段預配置的頭文件內。
10、可選的,還包括:
11、若所述第二分區內的目標程序成功運行,則將所述第二分區內的目標程序刷入所述第一分區。
12、可選的,所述第二分區內的目標程序是否成功運行的確定過程,包括:
13、確定在預設時長內所述第二引導啟動程序重復運行的次數是否達到預設次數;
14、若是,則確定所述第二分區內的目標程序成功運行;
15、若否,則確定所述第二分區內的目標程序未成功運行。
16、可選的,所述電子控制單元的主控芯片具有ab?swap功能,所述ab?swap功能使得所述第一分區和所述第二分區具有相同的存儲空間和相同的存儲地址。
17、本申請第二方面提供一種ecu無感刷新裝置,包括:
18、第一運行模塊,用于運行第一分區內的第一引導啟動程序,以便所述第一引導啟動程序在監測到軟件刷新請求時,基于為目標程序預配置的地址分配信息,將所述目標程序刷入第二分區的對應地址處,其中,所述軟件刷新請求用于將所述電子控制單元的軟件程序更新為所述目標程序,所述第一分區和所述第二分區通過對所述電子控制單元的存儲區進行劃分得到;
19、第二運行模塊,用于在所述目標程序刷新完成后切換到所述第二分區,以依次運行所述第二分區內的第二引導啟動程序和所述第二分區內的目標程序,其中,在所述第二分區內的目標程序運行之前,所述第二引導啟動程序能夠基于所述地址分配信息對所述第二分區內的目標程序進行校驗;
20、第三運行模塊,用于若所述第二分區內的目標程序未成功運行,則運行所述第二分區內的默認程序,其中,所述默認程序為包含所述電子控制單元的基本功能且能夠正常運行的程序。
21、本申請第三方面提供一種計算機程序產品,包括計算機可讀指令,當所述計算機可讀指令在電子設備上運行時,使得所述電子設備實現上述第一方面或第一方面任一實現方式的ecu無感刷新方法。
22、本申請第四方面提供一種電子設備,包括至少一個處理器和與所述處理器連接的存儲器,其中:
23、所述存儲器用于存儲計算機程序;
24、所述處理器用于執行所述計算機程序,以使所述電子設備能夠實現上述第一方面或第一方面任一實現方式的ecu無感刷新方法。
25、本申請第五方面提供一種計算機存儲介質,所述存儲介質承載有一個或多個計算機程序,當所述一個或多個計算機程序被電子設備執行時,能夠使所述電子設備實現上述第一方面或第一方面任一實現方式的ecu無感刷新方法。
26、借由上述技術方案,本申請提供的ecu無感刷新方法可以在運行第一分區的同時在第二分區刷新目標程序,刷新完成后再運行第二分區內的目標程序即可,由于刷新目標程序的同時可以運行第一分區內的舊程序,使得本申請可以在車輛正常運行的過程中完成刷新,實現了ecu無感刷新。
27、進一步,本申請能夠為目標程序預配置地址分配信息,使得本申請可以根據目標程序的大小及硬件地址空間資源動態地設置地址分配信息,一方面提高了硬件地址空間資源的利用率,另一方面通過不約束待刷新程序的地址分配的方式,可以實現任意地址劃分的軟件刷新策略,靈活性更高。而當刷入的目標程序出現運行問題時,能夠跳轉運行默認程序,避免了因目標程序出現問題導致電子控制單元卡死而出現行車安全問題。
本文檔來自技高網...【技術保護點】
1.一種ECU無感刷新方法,其特征在于,包括:
2.根據權利要求1所述的ECU無感刷新方法,其特征在于,所述目標程序由多個數據段組成,每個所述數據段均預配置有地址分配信息;
3.根據權利要求2所述的ECU無感刷新方法,其特征在于,為每個所述數據段預配置的地址分配信息存儲于為該數據段預配置的頭文件內。
4.根據權利要求1所述的ECU無感刷新方法,其特征在于,還包括:
5.根據權利要求4所述的ECU無感刷新方法,其特征在于,所述第二分區內的目標程序是否成功運行的確定過程,包括:
6.根據權利要求1所述的ECU無感刷新方法,其特征在于,所述電子控制單元的主控芯片具有AB?Swap功能,所述AB?Swap功能使得所述第一分區和所述第二分區具有相同的存儲空間和相同的存儲地址。
7.一種ECU無感刷新裝置,其特征在于,包括:
8.一種計算機程序產品,其特征在于,包括計算機可讀指令,當所述計算機可讀指令在電子設備上運行時,使得所述電子設備實現如權利要求1至6中任意一項所述的ECU無感刷新方法。
9.
10.一種計算機存儲介質,其特征在于,所述存儲介質承載有一個或多個計算機程序,當所述一個或多個計算機程序被電子設備執行時,能夠使所述電子設備實現如權利要求1至6中任意一項所述的ECU無感刷新方法。
...【技術特征摘要】
1.一種ecu無感刷新方法,其特征在于,包括:
2.根據權利要求1所述的ecu無感刷新方法,其特征在于,所述目標程序由多個數據段組成,每個所述數據段均預配置有地址分配信息;
3.根據權利要求2所述的ecu無感刷新方法,其特征在于,為每個所述數據段預配置的地址分配信息存儲于為該數據段預配置的頭文件內。
4.根據權利要求1所述的ecu無感刷新方法,其特征在于,還包括:
5.根據權利要求4所述的ecu無感刷新方法,其特征在于,所述第二分區內的目標程序是否成功運行的確定過程,包括:
6.根據權利要求1所述的ecu無感刷新方法,其特征在于,所述電子控制單元的主控芯片具有ab?swap功...
【專利技術屬性】
技術研發人員:姜豐偉,許永莉,虞兮凡,杜逸康,
申請(專利權)人:上海汽車集團股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。