0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

教你動(dòng)手寫UDP協(xié)議棧—OTA上位機(jī)<3>

電子設(shè)計(jì) ? 來(lái)源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-12-24 17:46 ? 次閱讀

前言

據(jù)上次更新文章已經(jīng)兩個(gè)星期了,因?yàn)楣ぷ鞯脑颍瑳](méi)有時(shí)間更新。以后我也會(huì)盡量抽空總結(jié)近期的知識(shí)點(diǎn)。

今天這篇文章是屬于專輯《TCP-UDP協(xié)議棧》里面的一篇文章。這篇文章也是描述OTA的新的方案。前兩篇文章是關(guān)于下位機(jī)的mini UDP代碼實(shí)現(xiàn),那么我們寫了小型網(wǎng)絡(luò)協(xié)議棧究竟可以做什么?答案是OTA。之前也寫了兩篇關(guān)于手寫UDP協(xié)議棧的,如下:

教你動(dòng)手寫UDP協(xié)議棧教你動(dòng)手寫UDP協(xié)議棧-DHCP數(shù)據(jù)包解析<2>

那肯定有人問(wèn),OTA采用現(xiàn)成的協(xié)議棧不香嗎,為什么要自己寫協(xié)議棧。究竟有啥好處?答案如下:

因?yàn)楝F(xiàn)成的協(xié)議棧比較大,而且OTA功能用不到那么多協(xié)議棧功能。現(xiàn)在物聯(lián)網(wǎng)的時(shí)代,很多設(shè)備都是MCU + WIFI,在一些情況可能你要對(duì)MCU和WIFI進(jìn)行升級(jí),大部分的升級(jí)方式如下圖,PC或服務(wù)器發(fā)送升級(jí)包到MCU,然后MCU轉(zhuǎn)發(fā)升級(jí)包給WIFI,這樣實(shí)現(xiàn)WIFI模塊的升級(jí),很浪費(fèi)資源,而且還要求MCU上的flash更加大。這樣是一個(gè)不怎么理智的做法。如果這樣的方式給MCU升級(jí)確實(shí)沒(méi)有啥問(wèn)題。

自己寫的mini UDP協(xié)議棧實(shí)質(zhì)是放在wifi模塊上的,通過(guò)制定的協(xié)議將OTA包發(fā)送出去,WIFI模塊的mini UDP協(xié)議棧攔截制定協(xié)議的OTA包,然后進(jìn)行升級(jí)。如下圖,這樣的形式,MCU不用參與WIFI的升級(jí),可以說(shuō)WIFI可以不知不覺(jué)的進(jìn)行升級(jí),MCU一點(diǎn)知覺(jué)也沒(méi)有。這樣的升級(jí)方式快速,穩(wěn)定。

通過(guò)上述的描述,總的來(lái)說(shuō)就是簡(jiǎn)化wifi模塊的OTA功能。降低MCU的負(fù)擔(dān)。上位機(jī)

《Mini UDP OTA Tool》這是一個(gè)非常簡(jiǎn)陋的軟件,采用Python寫的。在這我想吐槽一下,Python寫上位機(jī)真心不好寫,我用過(guò)幾種語(yǔ)言寫過(guò)上位機(jī),Python寫上位機(jī)是最痛苦的。

這個(gè)軟件支持一鍵批量設(shè)備串行升級(jí)。也可根據(jù)版本號(hào),對(duì)某一批設(shè)備進(jìn)行一鍵升級(jí)??梢灾付硞€(gè)網(wǎng)卡設(shè)備上的設(shè)備進(jìn)行升級(jí)。

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    onsemi LV/MV MOSFET 產(chǎn)品介紹 &amp;amp;amp; 行業(yè)應(yīng)用

    01直播介紹直播時(shí)間2024/10/281430直播內(nèi)容1.onsemiLV/MVMOSFET產(chǎn)品優(yōu)勢(shì)&amp;市場(chǎng)地位。2.onsemiLV/MVMOSFETRoadmap。3
    的頭像 發(fā)表于 10-13 08:06 ?250次閱讀
    onsemi LV/MV MOSFET 產(chǎn)品介紹 &<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>; 行業(yè)應(yīng)用

    手把手教你通過(guò)宏集物聯(lián)網(wǎng)工控屏&amp;amp;網(wǎng)關(guān)進(jìn)行協(xié)議轉(zhuǎn)換,將底層PLC/傳感器的數(shù)據(jù)轉(zhuǎn)換為TCP協(xié)議并傳輸?shù)接脩?/a>

    手把手教你通過(guò)宏集物聯(lián)網(wǎng)工控屏&amp;網(wǎng)關(guān)進(jìn)行協(xié)議轉(zhuǎn)換,將底層PLC/傳感器的數(shù)據(jù)轉(zhuǎn)換為TCP協(xié)議并傳輸?shù)接脩艚K端
    的頭像 發(fā)表于 08-15 13:29 ?381次閱讀
    手把手<b class='flag-5'>教你</b>通過(guò)宏集物聯(lián)網(wǎng)工控屏&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;網(wǎng)關(guān)進(jìn)行<b class='flag-5'>協(xié)議</b>轉(zhuǎn)換,將底層PLC/傳感器的數(shù)據(jù)轉(zhuǎn)換為TCP<b class='flag-5'>協(xié)議</b>并傳輸?shù)接脩? />    </a>
</div>                            <div   id=

    ESP8266 OTA升級(jí)錯(cuò)誤的原因?

    ]OTA_ADDR 4480 [OTA]write 3 OK --&amp;gt;OTA_up
    發(fā)表于 07-19 07:35

    FS201資料(pcb &amp;amp; DEMO &amp;amp; 原理圖)

    電子發(fā)燒友網(wǎng)站提供《FS201資料(pcb &amp; DEMO &amp; 原理圖).zip》資料免費(fèi)下載
    發(fā)表于 07-16 11:24 ?0次下載

    調(diào)試ESP8266集成LWIP協(xié)議UDP方式發(fā)送數(shù)據(jù)時(shí),無(wú)法正常發(fā)送數(shù)據(jù)是哪里的問(wèn)題?

    我在調(diào)試8266集成LWIP協(xié)議UDP方式發(fā)送數(shù)據(jù)時(shí),參考別的環(huán)境的UDP例程,發(fā)現(xiàn)無(wú)法正常發(fā)送數(shù)據(jù),反復(fù)檢查了,并確認(rèn)8266已經(jīng)通過(guò)WIFI連上網(wǎng)了,但是使用LWIP
    發(fā)表于 07-12 07:44

    請(qǐng)問(wèn)如何獲取UDP標(biāo)頭信息?

    ;proto.udp-&;gt;remote_ip[3], pespconn-&amp;gt;proto.
    發(fā)表于 07-09 06:20

    使用ESP32-S3進(jìn)行OTA升級(jí)時(shí)失敗的原因?

    ;amp;gt;, old:&amp;amp;lt;1,0&amp;
    發(fā)表于 06-14 08:12

    ESP32S3官方例程wifi-&amp;gt;station多塊板測(cè)試連接不上WiFi是怎么回事?

    問(wèn)題描述: 運(yùn)行的程序是wifi-&amp;amp;gt;station程序 1.我們自己畫的PCB板子,以前用過(guò)ESP32,ESP32S2在連接WiFi上均沒(méi)有問(wèn)題,現(xiàn)在在ESP32S3
    發(fā)表于 06-11 06:51

    ESP32S3升級(jí)到4.4.4后wifi總是報(bào)auth -&amp;gt; init (200),為什么?

    ;, sta:&amp;lt;13,2&amp;gt;, prof:1 I (4186) ESP32_UDP: wifi disconnec
    發(fā)表于 06-05 07:04

    淺談FPGA與上位機(jī)間的主流通信手段

    TCP/IP 協(xié)議 使用 TCP/IP 協(xié)議可以將 FPGA 中的數(shù)據(jù)以太網(wǎng)的形式輸出到上位機(jī),上位機(jī)
    的頭像 發(fā)表于 04-26 16:55 ?1038次閱讀

    udp是什么協(xié)議?udp協(xié)議介紹

    要求不高,但對(duì)時(shí)延和帶寬有要求的應(yīng)用場(chǎng)景。 UDP協(xié)議的主要特點(diǎn)包括: 1. 無(wú)連接:UDP不需要建立連接,可以直接發(fā)送數(shù)據(jù)。 2. 輕量級(jí):UDP沒(méi)有TCP那么復(fù)雜的控制機(jī)制,頭部信
    的頭像 發(fā)表于 04-19 15:57 ?1221次閱讀

    ethernetif_input和tcpip協(xié)議線程的作用

    tcpip協(xié)議線程是lwIP協(xié)議的核心線程,負(fù)責(zé)處理TCP/IP協(xié)議的各種功能,包括TCP
    的頭像 發(fā)表于 03-20 10:01 ?1124次閱讀

    Open RAN的未來(lái)及其對(duì)AT&amp;amp;T的意義

    3月14日消息,在“Connected America 2024”會(huì)議上,AT&amp;T高級(jí)副總裁兼網(wǎng)絡(luò)首席技術(shù)官Yigal Elbaz討論了Open RAN 的未來(lái)及其對(duì)AT&amp;T的意義。
    的頭像 發(fā)表于 03-14 14:40 ?645次閱讀

    通信網(wǎng)絡(luò)協(xié)議UDP協(xié)議技術(shù)解析

    在通常的網(wǎng)絡(luò)協(xié)議中,TCP/IP協(xié)議是一個(gè)常見的示例,其中UDP和TCP都是傳輸層協(xié)議。傳輸
    發(fā)表于 02-01 11:00 ?856次閱讀
    通信網(wǎng)絡(luò)<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>之<b class='flag-5'>UDP</b><b class='flag-5'>協(xié)議</b>技術(shù)解析

    工程送樣!手把手教你用好廣和通RedCap模組FG131&amp;amp;amp;FG132系列

    工程送樣!手把手教你用好廣和通RedCap模組FG131&amp;FG132系列
    的頭像 發(fā)表于 01-11 18:22 ?652次閱讀
    工程送樣!手把手<b class='flag-5'>教你</b>用好廣和通RedCap模組FG131&<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;<b class='flag-5'>amp</b>;FG132系列