【技術(shù)實(shí)現(xiàn)步驟摘要】
基于低速通訊接口的程序升級(jí)方法及系統(tǒng)
[0001]本專利技術(shù)涉及數(shù)字通信領(lǐng)域,尤其是基于低速通訊接口的程序升級(jí)方法及系統(tǒng)。
技術(shù)介紹
[0002]在工程車輛儀表等終端產(chǎn)品使用時(shí),由于客戶要求或者軟件漏洞等原因需要對(duì)產(chǎn)品進(jìn)行升級(jí)。需要通過總線連接T
?
Box至外網(wǎng),或者通過連接外部總線進(jìn)行程序升級(jí)。
[0003]在一些通訊接口速率低的使用場景,如低速率串口、can總線等。整個(gè)程序可能大到幾MB以上,現(xiàn)有的工程車輛儀表的程序更新往往是程序的全部更新,而速率太低會(huì)讓整個(gè)程序更新過程高達(dá)數(shù)分鐘,這是客戶難以接受的,并且很容易造成更新失敗率的提高。而工程儀表程序升級(jí)時(shí),程序的改動(dòng)往往很小,全部更新顯然是不合適的。
技術(shù)實(shí)現(xiàn)思路
[0004]本專利技術(shù)的目的就是為了解決現(xiàn)有技術(shù)中存在的上述問題,提供一種基于低速通訊接口的程序升級(jí)方法及系統(tǒng)。
[0005]本專利技術(shù)的目的通過以下技術(shù)方案來實(shí)現(xiàn):基于低速通訊接口的程序升級(jí)方法,包括如下步驟:S1,獲取待更新的新程序;S2,將所述新程序的每個(gè)函數(shù)及每個(gè)資源數(shù)據(jù)數(shù)組存儲(chǔ)在FLASH存儲(chǔ)器的一個(gè)獨(dú)立的FLASH分塊中;S3, 將新、舊程序進(jìn)行比對(duì)以確定舊程序?qū)?yīng)的FLASH分塊中需要更新內(nèi)容和/或需要清除內(nèi)容的FLASH分塊和/或新程序?qū)?yīng)的FLASH分塊中需要保留存儲(chǔ)內(nèi)容的FLASH分塊;S4,將所述需要更新內(nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容更新為新程序的對(duì)應(yīng)內(nèi)容和/或?qū)⑺鲂枰宄齼?nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容清除和/或?qū)⑺鲂枰A?span style='display:none'>存儲(chǔ)內(nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容添加到舊程序中。
[0006]優(yōu)選的,所述基于低速通訊接口的程序升級(jí)方法中,在S2之后,S3之前,執(zhí)行如下步驟:創(chuàng)建與所述新程序?qū)?yīng)的地址信息數(shù)組;所述地址信息數(shù)組可以通過索引名進(jìn)行數(shù)組尋址并調(diào)用每個(gè)函數(shù)及資源數(shù)據(jù)數(shù)組以鏈接形成程序;在創(chuàng)建的地址信息數(shù)組中添加新程序的每個(gè)函數(shù)的索引名及該函數(shù)所在的FLASH分塊在FLASH存儲(chǔ)器中的定位地址;在創(chuàng)建的地址信息數(shù)組中添加新程序的每個(gè)資源數(shù)組的索引名及該資源數(shù)組所在的FLASH分塊在FLASH存儲(chǔ)器中的定位地址。
[0007]優(yōu)選的,所述基于低速通訊接口的程序升級(jí)方法中,所述地址信息數(shù)組存儲(chǔ)在FLASH存儲(chǔ)器的固定FLASH塊中。
[0008]優(yōu)選的,所述基于低速通訊接口的程序升級(jí)方法中,所述S3包括
S31,對(duì)比新程序和舊程序?qū)?yīng)的地址信息數(shù)組;當(dāng)確定它們不同時(shí),確定舊程序?qū)?yīng)的地址信息數(shù)組需要更新并根據(jù)新程序?qū)?yīng)的地址信息數(shù)組進(jìn)行舊程序?qū)?yīng)的地址信息數(shù)組的更新;S32,通過對(duì)新、舊程序?qū)?yīng)的每個(gè)FLASH分塊的內(nèi)容進(jìn)行比對(duì)以確定舊程序?qū)?yīng)的FLASH分塊中需要更新內(nèi)容和/或需要清除內(nèi)容的FLASH分塊和/或新程序?qū)?yīng)的FLASH分塊中需要保留存儲(chǔ)內(nèi)容的FLASH分塊。
[0009]優(yōu)選的,所述基于低速通訊接口的程序升級(jí)方法中,在所述S31中,若確定一索引名在新程序?qū)?yīng)的地址信息數(shù)組中存在,而在舊程序?qū)?yīng)的地址信息數(shù)組中不存時(shí),將該索引名及其對(duì)應(yīng)的FLASH分塊在FLASH存儲(chǔ)器中的定位地址更新到舊程序?qū)?yīng)的地址信息數(shù)組中;同時(shí),將新程序?qū)?yīng)的地址信息數(shù)組中與該索引名對(duì)應(yīng)的FLASH分塊確定為所述需要保留存儲(chǔ)內(nèi)容的FLASH分塊;若確定一索引名在新程序?qū)?yīng)的地址信息數(shù)組中不存在,而在舊程序?qū)?yīng)的地址信息數(shù)組中存在,將該索引名及其對(duì)應(yīng)的FLASH分塊在FLASH存儲(chǔ)器中的定位地址從舊程序?qū)?yīng)的地址信息數(shù)組中清除;同時(shí),將該索引名對(duì)應(yīng)的FLASH分塊確定為所述需要清除內(nèi)容的FLASH分塊;若確定新、舊程序?qū)?yīng)的地址信息數(shù)組中,相同索引名對(duì)應(yīng)的FLASH分塊在FLASH存儲(chǔ)器中的定位地址所限定的存儲(chǔ)空間的大小不同時(shí),則將舊程序?qū)?yīng)的地址信息數(shù)組中與該索引名對(duì)應(yīng)的定位地址修改為新程序?qū)?yīng)的地址信息數(shù)中與該索引名對(duì)應(yīng)的定位地址;且在S32過程中,直接將舊程序?qū)?yīng)的地址信息數(shù)組中與該索引名對(duì)應(yīng)的FLASH分塊確定為所述需要更新存儲(chǔ)內(nèi)容的FLASH分塊。
[0010]基于低速通訊接口的程序升級(jí)系統(tǒng),包括:程序接受模塊,用于獲取待升級(jí)的新程序;分塊存儲(chǔ)模塊,用于將所述新程序的每個(gè)函數(shù)及每個(gè)資源數(shù)據(jù)數(shù)組存儲(chǔ)在FLASH存儲(chǔ)器的一個(gè)獨(dú)立的FLASH分塊中;比對(duì)模塊,用于將新、舊程序進(jìn)行比對(duì)以確定舊程序?qū)?yīng)的FLASH分塊中需要更新內(nèi)容和/或需要清除內(nèi)容的FLASH分塊和/或新程序?qū)?yīng)的FLASH分塊中需要保留存儲(chǔ)內(nèi)容的FLASH分塊;;更新模塊,用于將所述需要更新內(nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容更新為新程序的對(duì)應(yīng)內(nèi)容和/或?qū)⑺鲂枰宄齼?nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容清除和/或?qū)⑺鲂枰A舸鎯?chǔ)內(nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容添加到舊程序中。
[0011]優(yōu)選的,所述基于低速通訊接口的程序升級(jí)系統(tǒng)還包括地址信息數(shù)組構(gòu)建模塊,所述地址信息數(shù)組構(gòu)件模塊包括:創(chuàng)建單元,用于創(chuàng)建與程序?qū)?yīng)的地址信息數(shù)組,所述地址信息數(shù)組可以通過索引名進(jìn)行數(shù)組尋址并調(diào)用每個(gè)函數(shù)及資源數(shù)據(jù)數(shù)組以鏈接形成程序;第一信息添加單元,用于在創(chuàng)建的地址信息數(shù)組中添加程序的每個(gè)函數(shù)的索引名及該函數(shù)所在的FLASH分塊在FLASH存儲(chǔ)器中的定位地址;第二信息添加單元,用于在創(chuàng)建的地址信息數(shù)組中添加程序的每個(gè)資源數(shù)組的索引名及該資源數(shù)組所在的FLASH分塊在FLASH存儲(chǔ)器中的定位地址。
[0012]本專利技術(shù)技術(shù)方案的優(yōu)點(diǎn)主要體現(xiàn)在:
本專利技術(shù)的方法把程序的所有函數(shù)和資源數(shù)據(jù)數(shù)組定位在不同F(xiàn)LASH分塊中,在獲得待更新的新程序后,根據(jù)新、舊程序的對(duì)比,可以標(biāo)記出需要更新的FLASH分塊,從而只對(duì)需要對(duì)少量的FLASH分塊中的內(nèi)容進(jìn)行更新,可以極大地縮小程序需要更新的內(nèi)容大小,從而提高更新效率及保證成功率。
[0013]本專利技術(shù)的方法在實(shí)現(xiàn)過程中,通過構(gòu)建與程序相應(yīng)的地址信息數(shù)組來存儲(chǔ)程序的每個(gè)函數(shù)和資源數(shù)據(jù)數(shù)組所在的FLASH分塊的地址信息,從而通過索引名進(jìn)行數(shù)組尋址調(diào)用,能夠方便、準(zhǔn)確地進(jìn)行新、舊程序的相對(duì)應(yīng)的FLASH分塊中的內(nèi)容的調(diào)用和比較,能夠提高比對(duì)的效率和保證準(zhǔn)確性。
[0014]本專利技術(shù)先對(duì)新舊程序的地址信息數(shù)組進(jìn)行比對(duì),能夠快速地確定部分需要更新的FLASH分塊,可以有效地減少將相同索引名的FLASH分塊中存儲(chǔ)的內(nèi)容進(jìn)行比較的處理量,有利于提高整體的更新效率。
附圖說明
[0015]圖1是本專利技術(shù)的方法的過程示意圖;圖2是本專利技術(shù)的方法的詳細(xì)過程示意圖。
具體實(shí)施方式
[0016]本專利技術(shù)的目的、優(yōu)點(diǎn)和特點(diǎn),將通過下面優(yōu)選實(shí)施例的非限制性說明進(jìn)行圖示和解釋。這些實(shí)施例僅是應(yīng)用本專利技術(shù)技術(shù)方案的典型范例,凡采取等同替換或者等效變換而形成的技術(shù)方案,均落在本專利技術(shù)要求保護(hù)的范圍之內(nèi)。
[0017]在方案的描述中,需要說明的是,術(shù)語“中心”、“上”、“下”、“左”、“右”、“前”、“后”、“豎直”、“水平”、“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述和簡化描述,而不是指本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
【技術(shù)特征摘要】
1.基于低速通訊接口的程序升級(jí)方法,其特征在于:包括如下步驟:S1,獲取待更新的新程序;S2,將所述新程序的每個(gè)函數(shù)及每個(gè)資源數(shù)據(jù)數(shù)組存儲(chǔ)在FLASH存儲(chǔ)器的一個(gè)獨(dú)立的FLASH分塊中;S3,將新、舊程序進(jìn)行比對(duì)以確定舊程序?qū)?yīng)的FLASH分塊中需要更新內(nèi)容和/或需要清除內(nèi)容的FLASH分塊和/或新程序?qū)?yīng)的FLASH分塊中需要保留存儲(chǔ)內(nèi)容的FLASH分塊;S4,將所述需要更新內(nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容更新為新程序的對(duì)應(yīng)內(nèi)容和/或?qū)⑺鲂枰宄齼?nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容清除和/或?qū)⑺鲂枰A舸鎯?chǔ)內(nèi)容的FLASH分塊中存儲(chǔ)的內(nèi)容添加到舊程序中。2.根據(jù)權(quán)利要求1所述的基于低速通訊接口的程序升級(jí)方法,其特征在于:在S2之后,S3之前,執(zhí)行如下步驟:創(chuàng)建與所述新程序?qū)?yīng)的地址信息數(shù)組;所述地址信息數(shù)組可以通過索引名進(jìn)行數(shù)組尋址并調(diào)用每個(gè)函數(shù)及資源數(shù)據(jù)數(shù)組以鏈接形成程序;在創(chuàng)建的地址信息數(shù)組中添加新程序的每個(gè)函數(shù)的索引名及該函數(shù)所在的FLASH分塊在FLASH存儲(chǔ)器中的定位地址;在創(chuàng)建的地址信息數(shù)組中添加新程序的每個(gè)資源數(shù)組的索引名及該資源數(shù)組所在的FLASH分塊在FLASH存儲(chǔ)器中的定位地址。3.根據(jù)權(quán)利要求2所述的基于低速通訊接口的程序升級(jí)方法,其特征在于:所述地址信息數(shù)組存儲(chǔ)在FLASH存儲(chǔ)器的固定FLASH塊中。4.根據(jù)權(quán)利要求2所述的基于低速通訊接口的程序升級(jí)方法,其特征在于:所述S3包括S31,對(duì)比新程序和舊程序?qū)?yīng)的地址信息數(shù)組;當(dāng)確定它們不同時(shí),確定舊程序?qū)?yīng)的地址信息數(shù)組需要更新并根據(jù)新程序?qū)?yīng)的地址信息數(shù)組進(jìn)行舊程序?qū)?yīng)的地址信息數(shù)組的更新;S32,通過對(duì)新、舊程序?qū)?yīng)的每個(gè)FLASH分塊的內(nèi)容進(jìn)行比對(duì)以確定舊程序?qū)?yīng)的FLASH分塊中需要更新內(nèi)容和/或需要清除內(nèi)容的FLASH分塊和/或新程序?qū)?yīng)的FLASH分塊中需要保留存儲(chǔ)內(nèi)容的FLASH分塊。5.根據(jù)權(quán)利要求4所述的基于低速通訊接口的程序升級(jí)方法,其特征在于:在所述S31中,若確定一索引名在新程序?qū)?yīng)的地址信息數(shù)組中存在,而在舊程序?qū)?yīng)的地址信息數(shù)組中不存時(shí),將該索引名及其對(duì)應(yīng)的FLASH分塊在FLASH存儲(chǔ)器中的定位地址更新到舊程序?qū)?yīng)的地址信息數(shù)組中;同時(shí)...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:祝濤,潘曉勇,龍華麗,
申請(qǐng)(專利權(quán))人:蘇州藍(lán)博控制技術(shù)有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。