System.ArgumentOutOfRangeException: 索引和長(zhǎng)度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及嵌入式系統(tǒng)軟件,更具體地說,它涉及一種差分?jǐn)?shù)據(jù)刷寫方法、系統(tǒng)、設(shè)備及存儲(chǔ)介質(zhì)。
技術(shù)介紹
1、在汽車制造過程中,ecu作為汽車的重要控制單元,需要在生產(chǎn)線終端(end?ofline,eol)進(jìn)行刷寫數(shù)據(jù),以確保其功能和參數(shù)符合設(shè)計(jì)要求。現(xiàn)有技術(shù)中,通常采用uds(unified?diagnostic?services)協(xié)議進(jìn)行數(shù)據(jù)刷寫,該協(xié)議提供了一系列標(biāo)準(zhǔn)化的服務(wù)指令,用于讀寫ecu中的數(shù)據(jù)。
2、現(xiàn)有的ecu數(shù)據(jù)刷寫方法通常包括以下步驟:
3、1.進(jìn)入完整刷寫模式:通過發(fā)送特定的uds指令,使ecu進(jìn)入eol數(shù)據(jù)讀取或?qū)懭肽J健?/p>
4、2.數(shù)據(jù)讀取或?qū)懭耄菏褂脴?biāo)準(zhǔn)的讀寫指令(如sid$34、sid$36)進(jìn)行數(shù)據(jù)傳輸和存儲(chǔ)。
5、3.數(shù)據(jù)校驗(yàn):完成數(shù)據(jù)寫入后,進(jìn)行校驗(yàn)以確保數(shù)據(jù)完整性。
6、現(xiàn)有技術(shù)的缺點(diǎn)如下:
7、1.低效的傳輸:現(xiàn)有的完整刷寫方法由于傳輸數(shù)據(jù)量大,效率低下,不適合在生產(chǎn)線上大規(guī)模使用。
8、2.高風(fēng)險(xiǎn):在刷寫過程中,如果出現(xiàn)通訊中斷或電源異常,現(xiàn)有的完整刷寫方法缺乏有效的恢復(fù)機(jī)制,容易導(dǎo)致ecu固件損壞或功能異常。
9、3.資源浪費(fèi):完整刷寫需要重新寫入大量重復(fù)的數(shù)據(jù),導(dǎo)致存儲(chǔ)資源和時(shí)間的浪費(fèi)。
10、4.恢復(fù)復(fù)雜:現(xiàn)有技術(shù)在刷寫失敗后,需要復(fù)雜的恢復(fù)步驟,影響生產(chǎn)效率和產(chǎn)品質(zhì)量。
技術(shù)實(shí)現(xiàn)思路
1、本專利技術(shù)要解決的技術(shù)問題是針對(duì)現(xiàn)有技術(shù)
2、本專利技術(shù)的目的二是提供一種差分?jǐn)?shù)據(jù)刷寫系統(tǒng)。
3、本專利技術(shù)的目的三是提供一種計(jì)算機(jī)設(shè)備。
4、本專利技術(shù)的目的四是提供一種計(jì)算機(jī)存儲(chǔ)介質(zhì)。
5、為了實(shí)現(xiàn)上述目的一,本專利技術(shù)提供一種差分?jǐn)?shù)據(jù)刷寫方法,該方法具體以下:
6、進(jìn)入差分模式,通過發(fā)送uds指令sid$31使ecu進(jìn)入差分刷寫模式,包括讀取模式和寫入模式,以獲取ecu返回的開始地址和結(jié)束地址;
7、數(shù)據(jù)讀取,通過發(fā)送sid$36指令對(duì)開始地址和結(jié)束地址之間的地址范圍進(jìn)行數(shù)據(jù)讀取;
8、數(shù)據(jù)寫入,通過發(fā)送sid$34指令對(duì)開始地址和結(jié)束地址之間的地址范圍進(jìn)行數(shù)據(jù)寫入;
9、數(shù)據(jù)校驗(yàn),完成數(shù)據(jù)寫入后,進(jìn)行數(shù)據(jù)校驗(yàn);
10、地址偏差計(jì)算,在數(shù)據(jù)傳輸過程中,需要精確計(jì)算數(shù)據(jù)地址的偏差,以確保數(shù)據(jù)的正確存儲(chǔ)和讀取;
11、按照設(shè)定刷新策略對(duì)差分?jǐn)?shù)據(jù)區(qū)域進(jìn)行數(shù)據(jù)刷新,差分?jǐn)?shù)據(jù)區(qū)域包括ds0區(qū)域、ds1區(qū)域、ds2區(qū)域;
12、備份和恢復(fù),在引導(dǎo)程序?qū)Σ罘謹(jǐn)?shù)據(jù)區(qū)域的flash進(jìn)行操作時(shí),對(duì)ds0區(qū)域的數(shù)據(jù)進(jìn)行自動(dòng)備份,以確保數(shù)據(jù)的完整性;如果ds0區(qū)域的任何刷新過程因?yàn)閿嚯娀蛲ㄓ嵵袛喽袛啵趀cu重新上電后從上次備份的數(shù)據(jù)中恢復(fù)丟失的數(shù)據(jù)。
13、作為進(jìn)一步地改進(jìn),地址偏差計(jì)算如下:
14、通過ecu響應(yīng)消息獲取讀取開始地址;
15、偏差=當(dāng)前地址-開始地址。
16、進(jìn)一步地,設(shè)定刷新策略包括ds0區(qū)域刷新策略,ds0區(qū)域刷新策略包括:
17、動(dòng)態(tài)緩沖區(qū)配置,通過發(fā)送0xf003指令配置動(dòng)態(tài)緩沖區(qū),用于暫存0x36服務(wù)傳輸?shù)臄?shù)據(jù)塊;
18、數(shù)據(jù)備份,在執(zhí)行任何擦除操作之前,讀取ds0中的所有flash數(shù)據(jù),并按照最小擦除單元的大小,為每個(gè)扇區(qū)創(chuàng)建數(shù)組和索引;
19、目標(biāo)扇區(qū)確定,根據(jù)0x34服務(wù)提供的地址,確定本次刷新循環(huán)的目標(biāo)扇區(qū);只有在收到0xf001指令后,才進(jìn)行備份、擦除和寫入目標(biāo)扇區(qū)的操作。
20、進(jìn)一步地,ds0區(qū)域刷新策略還包括刷新時(shí)限,從接收指令到發(fā)送響應(yīng)的整個(gè)flash操作過程,必須在15秒內(nèi)完成。
21、進(jìn)一步地,設(shè)定刷新策略包括ds1/ds2區(qū)域刷新策略,ds1/ds2區(qū)域刷新策略包括:
22、小數(shù)據(jù)塊寫入,如果0x34服務(wù)發(fā)送的地址長(zhǎng)度小于flash的最小擦除扇區(qū)大小,則需要設(shè)置兩個(gè)大小等于flash最小擦除扇區(qū)大小的數(shù)據(jù)緩沖器,分別用于存儲(chǔ)0x34服務(wù)發(fā)送的地址信息緩沖和0x36服務(wù)發(fā)送的數(shù)據(jù)緩沖;當(dāng)緩沖區(qū)滿時(shí),執(zhí)行目標(biāo)flash的寫入操作并清空緩沖區(qū),然后返回0x78服務(wù)表示等待,本次數(shù)據(jù)下發(fā)循環(huán)直到使用0x37指令退出為止;
23、大數(shù)據(jù)塊寫入,如果0x34服務(wù)發(fā)送的地址長(zhǎng)度大于或等于flash的最小擦除扇區(qū)大小,則直接通過0x36服務(wù)向目標(biāo)flash寫入數(shù)據(jù)。
24、進(jìn)一步地,在擦除刷新指定的地址范圍之前,將該范圍內(nèi)的數(shù)據(jù)備份到預(yù)留的內(nèi)存空間中,備份的數(shù)據(jù)量不得超過256k。
25、進(jìn)一步地,如果ds1/ds2區(qū)域的任何刷新過程因?yàn)閿嚯娀蛲ㄓ嵵袛喽袛啵乖俅芜M(jìn)入0x40/41差分?jǐn)?shù)據(jù)刷寫讀寫會(huì)話,必須重新執(zhí)行完整的軟件刷新后才能再次進(jìn)入。
26、為了實(shí)現(xiàn)上述目的二,本專利技術(shù)提供一種差分?jǐn)?shù)據(jù)刷寫系統(tǒng),包括:
27、差分模式模塊,用于進(jìn)入差分模式,通過發(fā)送uds指令sid$31使ecu進(jìn)入差分刷寫模式,包括讀取模式和寫入模式,以獲取ecu返回的開始地址和結(jié)束地址;
28、讀取模塊,用于數(shù)據(jù)讀取,通過發(fā)送sid$36指令對(duì)開始地址和結(jié)束地址之間的地址范圍進(jìn)行數(shù)據(jù)讀取;
29、寫入模塊,用于數(shù)據(jù)寫入,通過發(fā)送sid$34指令對(duì)開始地址和結(jié)束地址之間的地址范圍進(jìn)行數(shù)據(jù)寫入;
30、校驗(yàn)?zāi)K,用于數(shù)據(jù)校驗(yàn),完成數(shù)據(jù)寫入后,進(jìn)行數(shù)據(jù)校驗(yàn);
31、計(jì)算模塊,用于地址偏差計(jì)算,在數(shù)據(jù)傳輸過程中,需要精確計(jì)算數(shù)據(jù)地址的偏差,以確保數(shù)據(jù)的正確存儲(chǔ)和讀取;
32、刷新模塊,用于按照設(shè)定刷新策略對(duì)差分?jǐn)?shù)據(jù)區(qū)域進(jìn)行數(shù)據(jù)刷新,差分?jǐn)?shù)據(jù)區(qū)域包括ds0區(qū)域、ds1區(qū)域、ds2區(qū)域;
33、備份恢復(fù)模塊,用于備份和恢復(fù),在引導(dǎo)程序?qū)Σ罘謹(jǐn)?shù)據(jù)區(qū)域的flash進(jìn)行操作時(shí),對(duì)ds0區(qū)域的數(shù)據(jù)進(jìn)行自動(dòng)備份,以確保數(shù)據(jù)的完整性;如果ds0區(qū)域的任何刷新過程因?yàn)閿嚯娀蛲ㄓ嵵袛喽袛啵趀cu重新上電后從上次備份的數(shù)據(jù)中恢復(fù)丟失的數(shù)據(jù)。
34、為了實(shí)現(xiàn)上述目的三,本專利技術(shù)提供一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述的一種差分?jǐn)?shù)據(jù)刷寫方法。
35、為了實(shí)現(xiàn)上述目的四,本專利技術(shù)提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述的一種差分?jǐn)?shù)據(jù)刷寫方法。
36、有益效果
37、本專利技術(shù)與現(xiàn)有技術(shù)相比,具有的優(yōu)點(diǎn)為:
38、本專利技術(shù)通過優(yōu)化uds指令和數(shù)據(jù)塊傳輸機(jī)制,提高數(shù)據(jù)傳輸效率;在數(shù)據(jù)寫入前進(jìn)行備份,確保在異常情況下能夠恢復(fù)數(shù)據(jù);在數(shù)據(jù)傳輸過程中,精確計(jì)算數(shù)據(jù)地址偏差,確保數(shù)據(jù)存儲(chǔ)的正確性;本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,該方法具體以下:
2.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,地址偏差計(jì)算如下:
3.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,設(shè)定刷新策略包括DS0區(qū)域刷新策略,DS0區(qū)域刷新策略包括:
4.根據(jù)權(quán)利要求3所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,DS0區(qū)域刷新策略還包括刷新時(shí)限,從接收指令到發(fā)送響應(yīng)的整個(gè)Flash操作過程,必須在15秒內(nèi)完成。
5.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,設(shè)定刷新策略包括DS1/DS2區(qū)域刷新策略,DS1/DS2區(qū)域刷新策略包括:
6.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,在擦除刷新指定的地址范圍之前,將該范圍內(nèi)的數(shù)據(jù)備份到預(yù)留的內(nèi)存空間中,備份的數(shù)據(jù)量不得超過256K。
7.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,如果DS1/DS2區(qū)域的任何刷新過程因?yàn)閿嚯娀蛲ㄓ嵵袛喽袛啵乖俅芜M(jìn)入0x40/41差分?jǐn)?shù)據(jù)刷寫讀寫會(huì)話,必須重新執(zhí)行完整的軟件刷新后才能再次進(jìn)入。<
...【技術(shù)特征摘要】
1.一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,該方法具體以下:
2.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,地址偏差計(jì)算如下:
3.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,設(shè)定刷新策略包括ds0區(qū)域刷新策略,ds0區(qū)域刷新策略包括:
4.根據(jù)權(quán)利要求3所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,ds0區(qū)域刷新策略還包括刷新時(shí)限,從接收指令到發(fā)送響應(yīng)的整個(gè)flash操作過程,必須在15秒內(nèi)完成。
5.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,設(shè)定刷新策略包括ds1/ds2區(qū)域刷新策略,ds1/ds2區(qū)域刷新策略包括:
6.根據(jù)權(quán)利要求1所述的一種差分?jǐn)?shù)據(jù)刷寫方法,其特征在于,在擦除刷新指定的地址范圍之...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:梁思宇,鄧小超,葉宇,
申請(qǐng)(專利權(quán))人:廣西玉柴機(jī)器股份有限公司,
類型:發(fā)明
國(guó)別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。