STM32CubeMx開發之路—在線升級OTA—(拓展)


運行環境

  • Windows10
  • STM32CubeMX Version 5.4.0
  • Keil5(MDK5) Version 5.28.0.0
  • 硬件開發板 F103RB-NUCLEO

簡介

本教程主要提供另一種升級思路, 這種方法採用Bootloader接收升級程序, 可以不需要App2區.
(文末會提供代碼,但不講解代碼)


思路

  • 通過Bootloader獲取程序,這樣每個App都可以少寫很多關於OTA的代碼, 減少了出錯的概率.
  • 同時因爲Bootloader出廠之後通常是不會更改的, 因此就算升級失敗, 也有補救的方法.
  • 同時這樣可以不進行程序的搬運, 直接就能夠將代碼下載進App1,甚至可以不需要App2區.
  • 當然也可以保留App2區, App1也可以實現下載程序到App2的功能.

先看Bootloader的框架

  • 標誌位放在Bootloader的最後一頁的最後一個字節.

在看App1的框架

  • 收到程序之後只需要修改標誌位再重啓就行了(如果Bootloader有自檢過程,甚至不需要修改標誌爲).

演示


只提供源碼, 不講解代碼 ! ! !

  • 協議是自己定的, 上位機也是自己寫的.
  • 免費提供下位機源碼上位機程序.
  • 講解C#上位機源碼 就不免費提供了.

備註:提供一下個人微信號 Hleafleafleaf,歡迎加好友,共同學習!共同進步!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章