[發明專利]一種基于TCP/IP的嵌入式程序遠程更新系統及方法有效
| 申請號: | 201811582024.7 | 申請日: | 2018-12-24 |
| 公開(公告)號: | CN109828769B | 公開(公告)日: | 2022-02-18 |
| 發明(設計)人: | 呂楓;林實俊;鄭劭鐸;黃龍翔;耿坤;周懷陽 | 申請(專利權)人: | 同濟大學 |
| 主分類號: | G06F8/65 | 分類號: | G06F8/65;G06F8/654;G06F8/61;G06F9/445 |
| 代理公司: | 上??剖⒅R產權代理有限公司 31225 | 代理人: | 趙繼明 |
| 地址: | 200092 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 tcp ip 嵌入式 程序 遠程 更新 系統 方法 | ||
1.一種采用基于TCP/IP的嵌入式程序遠程更新系統進行嵌入式程序遠程更新的方法,其特征在于,
所述系統包括:微控制器、網絡芯片和遠程主機,所述的微控制器用于運行用戶程序及遠程更新程序,并控制網絡芯片以在網絡上進行通信,所述的網絡芯片提供嵌入式設備入網所需網絡協議棧,并實際與遠程主機進行網絡通信,所述的微控制器和網絡芯片構成整體嵌入式設備,所述的遠程主機通過TCP/IP控制嵌入式設備進行更新;
所述方法包括以下步驟:
S100:系統復位并初始化,包括初始化微控制器、系統時鐘、通訊接口和建立存儲空間映射,存儲空間包括APP升級請求標志、啟動加載程序與APP共享網絡參數區、APP區、APP入口向量區和啟動加載程序區;
S110:微控制器讀取啟動加載程序與APP共享網絡參數區中的網絡配置參數,判斷參數是否正確,如不正確則執行S115;如正確則執行S120;
S115:將啟動加載程序與APP共享網絡參數區中的網絡配置參數改為默認的網絡配置參數,然后執行S120;
S120:讀取APP升級請求標志,判斷是否為APP主動要求進行升級,如是APP的請求,則執行S125;如不是,則執行S130;
S125:清除APP升級請求標志;
S130:微控制器與網絡芯片進行通信,如網絡芯片還未初始化,則使用依照S110和S115中所述網絡配置參數方法對網絡芯片的網絡配置參數初始化;如通信失敗,則嘗試進行修復,如通信正常,則執行S140;如通訊失敗且嘗試修復失敗,則執行S180;
S140:如果微控制器在S120中讀取到APP的升級請求,則執行S160;如果APP沒有請求升級,則執行S150;
S150:計算微控制器重置后至今的時間,如果超過了預設的超時時間且還未收到過任意有效指令,則執行S180;如果未超過超時時間或已經收到過任意有效指令,則執行S160;
S160:微控制器通過與網絡芯片通信以控制網絡芯片監聽預定TCP及UDP端口及基于TCP/IP與遠程主機進行通信,并根據接收到的指令和數據包執行對應行為,然后執行S170;
S170:微控制器判斷是否升級完成,如升級完成,則執行S180;如升級未完成,則執行S130;
S180:根據APP入口向量區是否存在APP入口向量或者采用其他方法判斷是否存在APP,如存在,則執行S190;如不存在,則執行S110;
S190:根據APP入口向量跳轉至APP入口,執行用戶程序;
所述的S140中,判斷是否為APP請求升級的方法為:在步驟S120時APP升級請求標志的值為特定幻數;
所述的步驟S160中,同時使用TCP和UDP協議來完成遠程更新中升級數據和控制指令的傳輸;使用停等協議逐包發送數據或控制指令,每次收到包后根據操作結果答復是否成功;
遠程主機向TCP端口發送的升級數據包括:升級數據包、密碼和升級完成確認包,所述的升級數據包包含序號字段、數據字段和校驗字段,用于按序正確傳輸所有升級數據,所述的密碼包是可選的,用于在啟用密碼的情況下傳輸用于驗證的密碼,所述的升級完成確認包用于通知啟動加載程序已經完成升級,準備跳轉入用戶程序;TCP端口在收到第一條正確升級數據時,微控制器先擦除所有APP區和APP入口向量,如擦除失敗,則答復“失敗”;否則,進行后續升級步驟;升級數據包包序正確且校驗成功后,不進行備份,而是直接編程入指定地址,并答復編程成功與否;
遠程主機向UDP端口發送的控制指令的數據包包括偵測包和命令包,所述的偵測包用于設備探測,所述的命令包用于發送指令,控制指令的數據包包含目標字段,用于標識希望的接收方,使用IP地址作為標識;UDP端口收到包后用目標字段與自身標識進行比對,如符合或者為廣播標識,則進行后續步驟,否則直接忽略。
2.根據權利要求1所述的方法,其特征在于,所述的APP升級請求標志被APP程序用于控制啟動加載程序進入等待升級狀態,所述的啟動加載程序與APP共享網絡參數區用于保存啟動加載程序和APP共同使用的網絡配置參數,所述的APP區保留給APP使用,所述的APP入口向量區用于記錄APP程序運行的入口地址,以在等待超時后進行跳轉,同時用于標記是否存在APP,所述的啟動加載程序區用于存儲事先燒寫的固化的啟動加載程序,所述的啟動加載程序區中存儲的啟動加載程序帶有保護機制,遠程更新時不允許擦寫。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于同濟大學,未經同濟大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811582024.7/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種軟件補丁的管理方法及系統
- 下一篇:一種軟件升級方法、終端設備及服務器





