前言
據上次更新文章已經兩個星期了,因為工作的原因,沒有時間更新。以后我也會盡量抽空總結近期的知識點。
今天這篇文章是屬于專輯《TCP-UDP協議棧》里面的一篇文章。這篇文章也是描述OTA的新的方案。前兩篇文章是關于下位機的mini UDP代碼實現,那么我們寫了小型網絡協議棧究竟可以做什么?答案是OTA。之前也寫了兩篇關于手寫UDP協議棧的,如下:
教你動手寫UDP協議棧教你動手寫UDP協議棧-DHCP數據包解析<2>
那肯定有人問,OTA采用現成的協議棧不香嗎,為什么要自己寫協議棧。究竟有啥好處?答案如下:
因為現成的協議棧比較大,而且OTA功能用不到那么多協議棧功能。現在物聯網的時代,很多設備都是MCU + WIFI,在一些情況可能你要對MCU和WIFI進行升級,大部分的升級方式如下圖,PC或服務器發送升級包到MCU,然后MCU轉發升級包給WIFI,這樣實現WIFI模塊的升級,很浪費資源,而且還要求MCU上的flash更加大。這樣是一個不怎么理智的做法。如果這樣的方式給MCU升級確實沒有啥問題。
自己寫的mini UDP協議棧實質是放在wifi模塊上的,通過制定的協議將OTA包發送出去,WIFI模塊的mini UDP協議棧攔截制定協議的OTA包,然后進行升級。如下圖,這樣的形式,MCU不用參與WIFI的升級,可以說WIFI可以不知不覺的進行升級,MCU一點知覺也沒有。這樣的升級方式快速,穩定。
通過上述的描述,總的來說就是簡化wifi模塊的OTA功能。降低MCU的負擔。上位機
《Mini UDP OTA Tool》這是一個非常簡陋的軟件,采用Python寫的。在這我想吐槽一下,Python寫上位機真心不好寫,我用過幾種語言寫過上位機,Python寫上位機是最痛苦的。
這個軟件支持一鍵批量設備串行升級。也可根據版本號,對某一批設備進行一鍵升級。可以指定某個網卡設備上的設備進行升級。
-
嵌入式設計
+關注
關注
0文章
393瀏覽量
21677 -
UDP協議棧
+關注
關注
0文章
4瀏覽量
1192
發布評論請先 登錄
k32l2b31寫入LPUART1->STAT |= (1<<25)會導致semihost_hardfault是為什么?
【正點原子STM32H7R3開發套件試用體驗】手寫數字、字母的識別
百問FB網絡編程 - UDP編程簡單示例
onsemi LV/MV MOSFET 產品介紹 & 行業應用

亞信電子于IAS 2024展出最新IO-Link主站&amp;設備軟件協議棧解決方案

手把手教你通過宏集物聯網工控屏&amp;網關進行協議轉換,將底層PLC/傳感器的數據轉換為TCP協議并傳輸到用戶

評論