[發明專利]一種MCU自我備份加載刷新的方法有效
| 申請號: | 201610095745.X | 申請日: | 2016-02-22 |
| 公開(公告)號: | CN105760165B | 公開(公告)日: | 2019-09-06 |
| 發明(設計)人: | 劉鈞;姚順;馮穎盈;楊學鋒;鄭必偉 | 申請(專利權)人: | 深圳威邁斯新能源股份有限公司 |
| 主分類號: | G06F9/4401 | 分類號: | G06F9/4401;G06F11/14;G06F21/57 |
| 代理公司: | 深圳市康弘知識產權代理有限公司 44247 | 代理人: | 胡朝陽;孫潔敏 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 mcu 自我 備份 加載 刷新 方法 | ||
本發明公開了一種MCU自我備份加載刷新的方法,包括下列步驟:將MCU的FLASH分為Boot區、App區、Bak區和Flag區;MCU上電后首先在Boot區中讀取Flag區中的標志位;判斷進入App區還是在Boot區完成加載過程;如是App區,則往Flag區寫入加載標志、軟硬件版本號及模塊地址信息后重啟;如是Boot區,則判斷是新加載還是之前加載失敗恢復App數據;恢復App區數據則直接從Bak區中讀取數據并更新到App區;新加載,則輸入加載密鑰,校驗通過則將相關數據寫入Bak區;從Bak區中取出數據寫入App區,并更新App區代碼;終止加載過程,重新啟動并進入當前App區執行App程序。本發明僅靠MCU自身即可完成備份加載過程,節省外設成本也提高了加載功能的可靠性。
技術領域
本發明涉及應用程序備份和更新的方法,尤其涉及一種BootLoader進行在線加載刷新的通訊電源模塊,通過MCU自帶的大容量內存進行加載過程中的應用程序自我備份和更新的方法。
背景技術
通訊電源模塊開發及市場應用中常常涉及應用程序升級,以修復BUG或增加新功能,此時會用到引導裝載程序(BootLoader)加載刷新應用程序,常規的加載刷新方式是直接對APP區程序進行擦除,進而刷新程序,這種刷新方式簡單,但當刷新失敗時,模塊無法繼續正常工作,會一直處于等待刷新狀態,直到人工再進行強制刷新,恢復正常APP程序才能繼續工作。對于在偏遠地方無人值守的大型通訊電源系統,通常一個系統框中有好幾十個模塊,利用此類刷新方式由于某些原因造成局部模塊刷新失敗時會導致這些模塊宕機繼而影響整個系統工作,此時需要人工現場處理,這樣無疑影響客戶體驗和增加處理成本。
當前處理這種問題的方式多是通過增加一個外擴閃存(FLASH)或電可擦可編程只讀存儲器(EEPROM)之類的存儲芯片進行程序備份,加載時會先將相關代碼存入這類芯片,刷新時再從外擴芯片中讀取相關代碼并更新自身APP區,當更新失敗時會自動重啟并繼續從外擴芯片中讀取相關代碼完成自我刷新。此類刷新方式解決了前面提出的問題,但通過外擴方式進行加載刷新一方面增加了成本,另一方面也不可靠,當自身芯片或外擴芯片線路受到干擾或異常時,將影響程序備份甚至導致徹底無法進行加載刷新。
發明內容
本發明針對上述現有技術存在的缺陷,提出一種單片機(MCU)自我備份加載刷新的方法。
本發明提出的技術方案是,一種MCU自我備份加載刷新的方法,包括下列步驟:
步驟1. 將MCU的FLASH分為以下四個用于存儲不同的功能數據的部分:Boot區,用于執行加載過程;App區,用于存儲正常應用程序代碼;Bak區,用于存儲應用程序代碼備份數據;Flag區,用于掉電或重啟過程中的數據保存;
步驟2.MCU上電后首先進入Boot區,在Boot區中讀取Flag區中的標志位;
步驟3.判斷進入App區還是在Boot區完成加載過程;
如果進入App區,則在代碼執行過程中接收到加載請求后,判斷軟硬件版本號,當版本號滿足要求時,往Flag區寫入加載標志、軟硬件版本號及模塊地址信息后重啟;當進入Boot區,則進入步驟4,開始執行加載過程;
步驟4.判斷是新加載還是之前加載失敗恢復App數據,如是恢復App區數據則直接從Bak區中讀取數據并更新到App區;如果是新加載,則要求輸入加載密鑰;
步驟5.判斷加載密鑰是否正確,加載密鑰匹配正確后開始接收數據并校驗,校驗通過則將相關數據寫入Bak區;加載密鑰不匹配則轉步驟7;
步驟6.從Bak區中取出數據寫入App區,并更新App區代碼;
步驟7.終止加載過程,重新啟動并進入當前App區執行App程序;
步驟8.重新啟動,完成MCU的自我備份加載刷新。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳威邁斯新能源股份有限公司,未經深圳威邁斯新能源股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610095745.X/2.html,轉載請聲明來源鉆瓜專利網。





