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

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

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

奇妙的Air780E之UDP應(yīng)用示例大賞!

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2024-11-04 09:25 ? 次閱讀

關(guān)于UDP是一種無(wú)連接的、不可靠的傳輸層協(xié)議,主要用于實(shí)現(xiàn)網(wǎng)絡(luò)中的快速通訊,我們今天將把Air780E的UDP應(yīng)用分析透徹。

1、UDP概述

以下是UDP通訊的主要特點(diǎn):

1.1 無(wú)連接通訊:

UDP在發(fā)送數(shù)據(jù)之前不需要建立連接,這大大減少了通訊的延遲。發(fā)送方只需將數(shù)據(jù)包封裝成UDP報(bào)文,并附上目的地址和端口號(hào),即可直接發(fā)送。

1.2 不可靠傳輸:

UDP不保證數(shù)據(jù)包的順序性、完整性和可靠性。數(shù)據(jù)包在傳輸過程中可能會(huì)丟失、重復(fù)或亂序到達(dá)。因此,UDP通訊需要應(yīng)用層自行處理這些問題,如實(shí)現(xiàn)錯(cuò)誤檢測(cè)、數(shù)據(jù)重傳等機(jī)制。

1.3 面向報(bào)文:

UDP以報(bào)文為單位進(jìn)行數(shù)據(jù)傳輸,每個(gè)報(bào)文都是獨(dú)立的。這種面向報(bào)文的特性使得UDP能夠保持?jǐn)?shù)據(jù)的完整性,并且便于進(jìn)行錯(cuò)誤檢測(cè)和處理。

1.4 高效性:

UDP的頭部結(jié)構(gòu)非常簡(jiǎn)單,只包含必要的字段,如源端口、目的端口、數(shù)據(jù)長(zhǎng)度和校驗(yàn)和。這種簡(jiǎn)潔的頭部設(shè)計(jì)使得UDP在處理數(shù)據(jù)包時(shí)更加高效,減少了網(wǎng)絡(luò)延遲。

1.5 實(shí)時(shí)性:

UDP通訊具有較快的傳輸速度,適用于對(duì)實(shí)時(shí)性要求較高的應(yīng)用場(chǎng)景,如視頻通話、在線游戲等。在這些場(chǎng)景中,即使數(shù)據(jù)包偶爾丟失或延遲,也不會(huì)對(duì)整體功能產(chǎn)生嚴(yán)重影響。

2、UDP-UART透?jìng)鞴δ軐?shí)現(xiàn)的概述

本文教你怎么使用luatos腳本語(yǔ)言,就可以讓合宙4G模組連接上一個(gè)UDP服務(wù)器,并且模組和服務(wù)器之間實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸!

2.1 本教程實(shí)現(xiàn)的功能定義

通過網(wǎng)頁(yè)端啟動(dòng)一個(gè)UDP服務(wù)器;

4G模組插卡開機(jī)后,連接上UDP服務(wù)器;

4G模組向UDP服務(wù)器發(fā)送"UDPCONNECT",服務(wù)器可以收到數(shù)據(jù)并且在網(wǎng)頁(yè)端顯示;

UDP服務(wù)器網(wǎng)頁(yè)端向4G模組發(fā)送datafromUDPserver,4G模組可以收到數(shù)據(jù)并且通過串口輸出顯示;

2.2 文章內(nèi)容引用

780E開發(fā)板軟硬件資料

以上接口函數(shù)不做詳細(xì)介紹,可通過此鏈接查看具體介紹:socket-網(wǎng)絡(luò)接口-LuatOS文檔

2.3 核心腳本代碼詳解

2.3.1 串口初始化

本文示例:串口使用MAIN_UART(uart1)

wKgaoWcnbWGAPSxVAAMg0xvS7Cw511.png

2.3.2 數(shù)據(jù)接收回調(diào):搭建響應(yīng)橋梁

這里使用uart.rx接口,和以zbuff的方式存儲(chǔ)從uart1外部串口收到的數(shù)據(jù)--收取數(shù)據(jù)會(huì)觸發(fā)回調(diào),這里的"receive"是固定值不要修改。

wKgZoWcnbXeAJFGPAAghS3tD5v8483.png

2.3.3 UDP網(wǎng)絡(luò)配置:鋪就數(shù)據(jù)通道

wKgZoWcnbYmAThL0AA_8Jb1m9VI212.png

2.3.4 UDP至串口透?jìng)鳎簲?shù)據(jù)無(wú)縫流轉(zhuǎn)

wKgaoWcnbZaAGiYFAAaga2l62io641.png

2.3.5 串口至UDP反透?jìng)鳎?a target="_blank">信息雙向傳遞

wKgaoWcnbaOAUkkdAAgaXpAEm54525.png

2.4 成果演示與深度解析:視頻+圖文全面展示

2.4.1 成果運(yùn)行精彩呈現(xiàn)

wKgZoWcnbbKAAeNLAAXMTATiK5E173.png

2.4.2完整實(shí)例深度剖析

wKgZoWcnbcKAZFJgABZ44efrMWw372.pngwKgaoWcnbd6AXDdfABDvKOuiZU8695.pngwKgZoWcnbfOAUze4ABEZWh6E_e0854.pngwKgaoWcnbgSAFhJdAA8wiwTRLaw571.pngwKgZoWcnbhOASWHYAA-p1NOCIvo718.png

3、總結(jié)

UDP-UART匯總:

UDP(用戶數(shù)據(jù)報(bào)協(xié)議)是一種無(wú)連接的傳輸層協(xié)議,它提供不可靠的服務(wù),不保證數(shù)據(jù)包的順序、完整性或正確性,但具有較低的時(shí)延和開銷。UDP常用于需要快速傳輸且對(duì)丟包不太敏感的應(yīng)用,如實(shí)時(shí)音視頻、在線游戲等。

UART(通用異步收發(fā)傳輸器)是一種串行通信協(xié)議,用于在計(jì)算機(jī)和其他設(shè)備之間傳輸數(shù)據(jù)。UART通信是異步的,意味著每個(gè)數(shù)據(jù)包的發(fā)送和接收是獨(dú)立的,不需要時(shí)鐘信號(hào)來同步。UART通信通常用于低速設(shè)備之間的連接,如微控制器、傳感器等。

將UDP與UART結(jié)合起來,通常是在嵌入式系統(tǒng)物聯(lián)網(wǎng)IoT)應(yīng)用中,需要將設(shè)備上的數(shù)據(jù)通過網(wǎng)絡(luò)傳輸?shù)竭h(yuǎn)程服務(wù)器或其他設(shè)備時(shí)。在這種情況下,UART可能用于設(shè)備內(nèi)部的串行通信,而UDP則用于設(shè)備之間的網(wǎng)絡(luò)通信。例如,一個(gè)基于微控制器的設(shè)備可能通過UART接口收集傳感器數(shù)據(jù),然后通過UDP協(xié)議將這些數(shù)據(jù)發(fā)送到遠(yuǎn)程服務(wù)器進(jìn)行分析或存儲(chǔ)。

需要注意的是,UDP和UART是不同層次的協(xié)議,UDP位于傳輸層,而UART位于物理層和數(shù)據(jù)鏈路層(在某些上下文中,可能被視為一種簡(jiǎn)單的通信接口)。它們各自在其層次上發(fā)揮作用,但可以在某些應(yīng)用場(chǎng)景中結(jié)合使用以實(shí)現(xiàn)設(shè)備到網(wǎng)絡(luò)的通信。

4、常見問題

4.1 UDP是否支持單向/雙向認(rèn)證

UDP本身不直接支持單向或雙向認(rèn)證。UDP是一種無(wú)連接的協(xié)議,主要用于實(shí)時(shí)應(yīng)用,如IP電話和視頻會(huì)議,它不保證數(shù)據(jù)的可靠交付。雖然UDP本身不提供認(rèn)證功能,但可以在應(yīng)用層或通過網(wǎng)絡(luò)設(shè)備實(shí)現(xiàn)用戶認(rèn)證。這種認(rèn)證可以在連接建立的起始階段進(jìn)行,并且可以通過多種方式實(shí)現(xiàn),包括單向認(rèn)證(如客戶端向服務(wù)器提供認(rèn)證信息)和雙向認(rèn)證(雙方相互驗(yàn)證身份)。具體實(shí)現(xiàn)方式取決于應(yīng)用場(chǎng)景和需求。

5、擴(kuò)展

5.1 關(guān)于TCP和UDP

TCP(TransmissionControlProtocol,傳輸控制協(xié)議)和UDP(UserDatagramProtocol,用戶數(shù)據(jù)報(bào)協(xié)議)都是網(wǎng)絡(luò)層之上的傳輸層協(xié)議,它們?cè)诰W(wǎng)絡(luò)通訊中扮演著重要的角色,但有著顯著的區(qū)別。以下是TCP和UDP的簡(jiǎn)化對(duì)比:

5.2 連接性:

TCP:面向連接。在數(shù)據(jù)傳輸之前,需要先建立連接(三次握手),確保數(shù)據(jù)傳輸?shù)目煽啃浴?/p>

UDP:無(wú)連接。數(shù)據(jù)傳輸前不需要建立連接,直接發(fā)送數(shù)據(jù)包。

5.3 可靠性:

TCP:提供可靠的傳輸服務(wù)。通過確認(rèn)應(yīng)答、超時(shí)重傳、錯(cuò)誤校驗(yàn)等機(jī)制,確保數(shù)據(jù)按順序、無(wú)錯(cuò)誤地傳輸。

UDP:不保證數(shù)據(jù)的可靠性。數(shù)據(jù)包可能會(huì)丟失、重復(fù)或亂序到達(dá)。

5.4 速度:

TCP:由于需要建立連接和進(jìn)行各種可靠性檢查,TCP的傳輸速度相對(duì)較慢。

UDP:沒有連接建立和可靠性檢查的開銷,UDP的傳輸速度通常更快。

5.5 應(yīng)用場(chǎng)景:

TCP:適用于需要可靠傳輸?shù)膽?yīng)用場(chǎng)景,如網(wǎng)頁(yè)瀏覽、文件傳輸?shù)取?/p>

UDP:適用于對(duì)實(shí)時(shí)性要求較高、但對(duì)數(shù)據(jù)可靠性要求不高的應(yīng)用場(chǎng)景,如視頻流、音頻流、在線游戲等。

5.6 流量控制:

TCP:具有流量控制和擁塞控制機(jī)制,能夠根據(jù)網(wǎng)絡(luò)狀況調(diào)整數(shù)據(jù)傳輸速率。

UDP:沒有流量控制和擁塞控制機(jī)制,數(shù)據(jù)發(fā)送速率完全取決于應(yīng)用程序。

5.7 頭部開銷:

TCP:頭部開銷較大,包含源端口、目的端口、序列號(hào)、確認(rèn)號(hào)、窗口大小等多個(gè)字段。

UDP:頭部開銷較小,僅包含源端口、目的端口、長(zhǎng)度和校驗(yàn)和等字段。

分享完畢,歡迎關(guān)注

審核編輯 黃宇

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

    關(guān)注

    5056

    文章

    18960

    瀏覽量

    301744
  • 數(shù)據(jù)傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    1782

    瀏覽量

    64398
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2900

    文章

    44009

    瀏覽量

    369923
  • UDP
    UDP
    +關(guān)注

    關(guān)注

    0

    文章

    321

    瀏覽量

    33849
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    UDP應(yīng)用詳解:Air780E軟件的全面手冊(cè)

    了解Air780E軟件UDP應(yīng)用全面手冊(cè),永享編程幸福人生。
    的頭像 發(fā)表于 11-05 12:31 ?40次閱讀
    <b class='flag-5'>UDP</b>應(yīng)用詳解:<b class='flag-5'>Air780E</b>軟件的全面手冊(cè)

    不可錯(cuò)過的Air780EWebSocket應(yīng)用示范!小白篇

    咋們今天說的Air780EWebSocket應(yīng)用示范針對(duì)小白絕對(duì)是不可以錯(cuò)過的示例。
    的頭像 發(fā)表于 11-03 20:16 ?509次閱讀
    不可錯(cuò)過的<b class='flag-5'>Air780E</b><b class='flag-5'>之</b>WebSocket應(yīng)用示范!小白篇

    Air780E如何發(fā)送SMS?一文詳解!

    ?今天一起來學(xué)習(xí)使用合宙低功耗4G模組Air780E發(fā)送SMS短消息: 一、SMS簡(jiǎn)介 SMS(短消息服務(wù),ShortMessageService)功能主要用于在蜂窩網(wǎng)絡(luò)中傳輸短消息。 在4G網(wǎng)絡(luò)中
    的頭像 發(fā)表于 11-03 08:22 ?139次閱讀
    <b class='flag-5'>Air780E</b>如何發(fā)送SMS?一文詳解!

    從箱子里找出來的示例Air780E軟件指南TCP應(yīng)用

    今天翻箱倒柜,把塵封已久的關(guān)于Air780E軟件指南TCP應(yīng)用教程翻出來給大家展示展示:讓我從概述、環(huán)境準(zhǔn)備、問題等方面來給大家說清楚。
    的頭像 發(fā)表于 11-02 11:58 ?217次閱讀
    從箱子里找出來的<b class='flag-5'>示例</b>:<b class='flag-5'>Air780E</b>軟件指南<b class='flag-5'>之</b>TCP應(yīng)用

    如何使用Air780E開發(fā)板?看這篇就夠了!

    ? 一、綜述 CORE-AIR780E 開發(fā)板是合宙通信推出的基于 Air780E 模組所開發(fā)的,包含電源,SIM 卡,USB,天線,音頻等必要功能的最小硬件系統(tǒng)。以方便用戶在設(shè)計(jì)前期
    的頭像 發(fā)表于 10-23 17:07 ?220次閱讀
    如何使用<b class='flag-5'>Air780E</b>開發(fā)板?看這篇就夠了!

    硬件設(shè)計(jì)很簡(jiǎn)單?低功耗4G模組Air780E—開機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    ?Air780E是合宙低功耗4G-Cat.1模組經(jīng)典型號(hào)之一,上期我們解答了大家關(guān)心的系列問題,并講解了[選型的注意要點(diǎn)] 有朋友問:能不能講些硬件設(shè)計(jì)相關(guān)的內(nèi)容? 模組的上電開機(jī),是硬件設(shè)計(jì)調(diào)試
    的頭像 發(fā)表于 10-15 10:18 ?247次閱讀
    硬件設(shè)計(jì)很簡(jiǎn)單?低功耗4G模組<b class='flag-5'>Air780E</b>—開機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    關(guān)于Air780E:與服務(wù)器的加密通信操作方法

    ?今天我們來學(xué)習(xí)合宙低功耗4G模組Air780E快速入門跟服務(wù)器之間的加密通信,伙伴們,一起學(xué)起來! 一、 編寫腳本 1.1 準(zhǔn)備資料 Air780E開發(fā)板購(gòu)買 Air780E開發(fā)板
    的頭像 發(fā)表于 10-12 07:31 ?197次閱讀
    關(guān)于<b class='flag-5'>Air780E</b>:與服務(wù)器的加密通信操作方法

    選型4G-Cat.1模組Air780E時(shí),我應(yīng)該注意什么?

    ?Air780E是合宙低功耗4G-Cat.1模組經(jīng)典型號(hào)之一,累計(jì)出貨數(shù)量2000萬(wàn)+,廣泛應(yīng)用于物聯(lián)網(wǎng)各行業(yè)。在此,特別感謝各位大佬的信任與支持。 寫這篇文檔的目的是什么呢? 從用戶的角度, 解答
    的頭像 發(fā)表于 09-27 07:07 ?348次閱讀
    選型4G-Cat.1模組<b class='flag-5'>Air780E</b>時(shí),我應(yīng)該注意什么?

    硬件設(shè)計(jì)很簡(jiǎn)單?合宙低功耗4G模組Air780E—開機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    ?Air780E是合宙低功耗4G-Cat.1模組經(jīng)典型號(hào)之一,上期我們解答了大家關(guān)心的系列問題,并講解了[選型的注意要點(diǎn)] 有朋友問:能不能講些硬件設(shè)計(jì)相關(guān)的內(nèi)容? 模組的上電開機(jī),是硬件設(shè)計(jì)調(diào)試
    的頭像 發(fā)表于 09-27 07:04 ?2024次閱讀
    硬件設(shè)計(jì)很簡(jiǎn)單?合宙低功耗4G模組<b class='flag-5'>Air780E</b>—開機(jī)啟動(dòng)及外圍電路設(shè)計(jì)

    合宙4G模組Air780E開發(fā)板使用手冊(cè)

    合宙開發(fā)板Air780E使用說明
    的頭像 發(fā)表于 09-09 18:22 ?531次閱讀
    合宙4G模組<b class='flag-5'>Air780E</b>開發(fā)板使用手冊(cè)

    合宙Air780E硬件設(shè)計(jì)手冊(cè)02

    合宙低功耗4G模組Air780E硬件設(shè)計(jì)介紹
    的頭像 發(fā)表于 09-06 12:02 ?349次閱讀
    合宙<b class='flag-5'>Air780E</b>硬件設(shè)計(jì)手冊(cè)02

    合宙 Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問題如何分析簡(jiǎn)介本文檔適用于合宙Air780E
    的頭像 發(fā)表于 08-01 17:27 ?634次閱讀
    合宙 <b class='flag-5'>Air780E</b>/<b class='flag-5'>Air780</b>EP/<b class='flag-5'>Air780</b>EQ/<b class='flag-5'>Air</b>201模塊遇到死機(jī)問題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到內(nèi)存死機(jī)如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到內(nèi)存死機(jī)如何分析簡(jiǎn)介本文檔適用于合宙Air780E、
    的頭像 發(fā)表于 07-19 16:07 ?438次閱讀
    <b class='flag-5'>Air780E</b>/<b class='flag-5'>Air780</b>EP/<b class='flag-5'>Air780</b>EQ/<b class='flag-5'>Air</b>201模塊遇到內(nèi)存死機(jī)如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問題如何分析

    Air780E/Air780EP/Air780EQ/Air201模塊遇到死機(jī)問題如何分析簡(jiǎn)介本文檔適用于合宙Air780E、
    的頭像 發(fā)表于 07-19 15:37 ?509次閱讀
    <b class='flag-5'>Air780E</b>/<b class='flag-5'>Air780</b>EP/<b class='flag-5'>Air780</b>EQ/<b class='flag-5'>Air</b>201模塊遇到死機(jī)問題如何分析

    Air780E硬件設(shè)計(jì)手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《Air780E硬件設(shè)計(jì)手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 04-14 09:57 ?20次下載