色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

TCP-UART數(shù)據(jù)透傳技術(shù),居然如此簡單!

青山老竹農(nóng) ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-12-30 16:46 ? 次閱讀

今天,來分享下TCP-UART透傳示例,源碼開放,可根據(jù)實(shí)際需求靈活應(yīng)用。

一、TCP協(xié)議概述

TCP(Transmission Control Protocol,傳輸控制協(xié)議)——是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。它主要用于在不可靠的網(wǎng)絡(luò)環(huán)境中提供穩(wěn)定的數(shù)據(jù)傳輸服務(wù),確保數(shù)據(jù)能夠按照順序、無錯誤地到達(dá)接收端。

TCP通過三次握手建立連接,使用滑動窗口進(jìn)行流量控制,以及通過校驗(yàn)和確認(rèn)應(yīng)答、超時重傳等機(jī)制來保證數(shù)據(jù)的可靠性。它是互聯(lián)網(wǎng)協(xié)議套件(TCP/IP協(xié)議族)的核心組成部分,廣泛應(yīng)用于各種網(wǎng)絡(luò)應(yīng)用中。

▼ TCP工作原理

連接建立:

TCP協(xié)議使用三次握手協(xié)議來建立連接。

客戶端發(fā)送一個SYN(同步序列編號)報(bào)文給服務(wù)端,并攜帶一個隨機(jī)生成的初始序列號。

服務(wù)端收到SYN報(bào)文后,發(fā)送一個SYN+ACK(同步序列編號 + 確認(rèn)應(yīng)答)報(bào)文給客戶端,表示確認(rèn)收到了客戶端的SYN報(bào)文,并攜帶自己的初始序列號。

客戶端收到服務(wù)端的SYN+ACK 報(bào)文后,發(fā)送一個ACK(確認(rèn)應(yīng)答)報(bào)文給服務(wù)端,表示確認(rèn)收到了服務(wù)端的SYN+ACK報(bào)文。至此,TCP連接建立完成。

數(shù)據(jù)傳輸:

在連接建立后,雙方就可以開始傳輸數(shù)據(jù)了。TCP協(xié)議會將應(yīng)用層發(fā)送的數(shù)據(jù)分割成適當(dāng)長度的報(bào)文段(通常受該計(jì)算機(jī)連接的網(wǎng)絡(luò)的數(shù)據(jù)鏈路層的最大傳輸單元MTU的限制),并為每個報(bào)文段分配一個序號。

接收端在收到報(bào)文段后,會按照序號進(jìn)行排序,并發(fā)送確認(rèn)應(yīng)答(ACK)給發(fā)送端。如果發(fā)送端在合理的往返時延(RTT)內(nèi)未收到確認(rèn)應(yīng)答,則會重傳對應(yīng)的報(bào)文段。

連接釋放:

TCP協(xié)議使用四次揮手協(xié)議來終止連接。

客戶端發(fā)送一個FIN(結(jié)束)報(bào)文給服務(wù)端,表示自己想要關(guān)閉連接。

服務(wù)端收到FIN報(bào)文后,發(fā)送一個ACK報(bào)文給客戶端,表示確認(rèn)收到了客戶端的FIN報(bào)文。此時,客戶端到服務(wù)端的連接關(guān)閉,但服務(wù)端到客戶端的連接仍然打開。

服務(wù)端在發(fā)送完所有剩余數(shù)據(jù)后,也發(fā)送一個FIN報(bào)文給客戶端,表示自己也想要關(guān)閉連接。

客戶端收到服務(wù)端的FIN報(bào)文后,發(fā)送一個ACK報(bào)文給服務(wù)端,表示確認(rèn)收到了服務(wù)端的FIN報(bào)文。至此,TCP連接完全關(guān)閉。

二、TCP-UART透傳示例

本小節(jié)教你使用LuatOS腳本語言,讓Air201模組連接上一個TCP服務(wù)器,并且實(shí)現(xiàn)模組和服務(wù)器之間數(shù)據(jù)的雙向傳輸。

wKgZPGdyW6uAdHISAAJCjv0QY_g668.png

軟硬件相關(guān)準(zhǔn)備工作及最新示例源碼下載詳見:

https://docs.openluat.com/air201/luatos/app/socket/tcp/

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

通過網(wǎng)頁端啟動一個TCP服務(wù)器;

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

Air201模組向TCP服務(wù)器發(fā)送:TCP CONNECT,服務(wù)器可以收到數(shù)據(jù)并且在網(wǎng)頁端顯示;

TCP服務(wù)器網(wǎng)頁端向Air201模組發(fā)送:data from TCP server,Air201模組可以收到數(shù)據(jù)并且通過串口輸出顯示。

2.2 核心腳本代碼詳解

2.2.1 串口初始化

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

wKgZO2dyW8eAQtSCAADP3s-j55Q413.png

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

這里使用uart.rx接口,和以zbuff的方式存儲從uart1外部串口收到的數(shù)據(jù)--收取數(shù)據(jù)會觸發(fā)回調(diào)。

注意:這里的"receive"是固定值不要修改。

wKgZPGdyW9WAcuEmAAIXQ-U3V3k756.png

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

wKgZO2dyW-KAMu6CAAPxcQda8eQ995.png

2.2.4 TCP至串口透傳:數(shù)據(jù)無縫流轉(zhuǎn)

wKgZPGdyW--AULbRAAGeMxxQTz8320.png

2.2.5 串口至TCP反透傳:信息雙向傳遞

wKgZO2dyW_uANRgfAAIUn5l7Fxg252.png

2.3 完整代碼及運(yùn)行結(jié)果

2.3.1 完整代碼

wKgZO2dyXBeAOmRPAAZ_U-ep_Tw834.png

wKgZPGdyXCuAOweDAAWPXu5-8PI053.png

wKgZO2dyXEGAOp8yAASNR5CjG8c814.png

wKgZO2dyXFaAJYmtAATBtbUEWi8972.png

wKgZPGdyXGeAcOHSAAIbvNlkmH0956.png

2.3.2 運(yùn)行結(jié)果

使用TCP/UDP web測試工具及SSCOM串口工具,運(yùn)行結(jié)果如下圖所示:

wKgZO2dyXIGAAaa2AAPVpVn8iQ4970.png


今天的內(nèi)容就分享到這里了~

審核編輯 黃宇

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

    關(guān)注

    8

    文章

    7067

    瀏覽量

    89110
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1362

    瀏覽量

    79108
  • 透傳
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    6831
收藏 人收藏

    評論

    相關(guān)推薦

    TCP-UART示例~看完就會源碼開放!

    今天,來分享下TCP-UART示例,源碼開放,可根據(jù)實(shí)際需求靈活應(yīng)用。 ? 一、TCP協(xié)議概述 TCP(Transmission Con
    的頭像 發(fā)表于 12-30 16:43 ?110次閱讀
    <b class='flag-5'>TCP-UART</b><b class='flag-5'>透</b><b class='flag-5'>傳</b>示例~看完就會源碼開放!

    DTU終端CATCOM-100云端轉(zhuǎn)發(fā)應(yīng)用

    本文介紹DTU設(shè)備數(shù)據(jù)轉(zhuǎn)發(fā)應(yīng)用,實(shí)現(xiàn)點(diǎn)對點(diǎn)通信。應(yīng)用場景DTU設(shè)備數(shù)據(jù)
    的頭像 發(fā)表于 10-13 08:05 ?287次閱讀
    DTU終端CATCOM-100云端<b class='flag-5'>透</b><b class='flag-5'>傳</b>轉(zhuǎn)發(fā)應(yīng)用

    網(wǎng)絡(luò)和非是什么區(qū)別是什么

    :適用簡易、立即的數(shù)據(jù)傳輸,留意數(shù)據(jù)的完整性和低延遲。非:適用必須進(jìn)行
    的頭像 發(fā)表于 08-07 16:19 ?827次閱讀

    請問ESP32-S3-WROOM-1U模組可以做串口或者SPI接口的數(shù)據(jù)嗎?

    請問下,ESP32-S3-WROOM-1U模組可以做串口或者SPI接口的數(shù)據(jù)嗎?還需要額外對模組進(jìn)行編程下載嗎?還是模組默認(rèn)的程序就可以實(shí)現(xiàn)
    發(fā)表于 07-19 06:54

    請問AT支持UDP嗎?

    做了測試,SDK V1.00 AT文件燒寫后,設(shè)定為TCP時,是可以了, 但是設(shè)定為UDP后,傳出現(xiàn)發(fā)送不成功,但是接收是可以的,是不是AT不支持UDP
    發(fā)表于 07-17 08:28

    ESP8266模式是如何工作的?

    有人能告訴我傳輸模式是如何發(fā)送數(shù)據(jù)的嗎?文檔 (https://www.espressif.com/sites/default/files/documentation
    發(fā)表于 07-15 07:48

    請問SDK固件如何實(shí)現(xiàn)網(wǎng)絡(luò)

    您好,想請問一下,我們現(xiàn)在一個項(xiàng)目需要用SDK來實(shí)現(xiàn)網(wǎng)路數(shù)據(jù),但是調(diào)用 官方API :espconn_send()會自動把HTTP報(bào)文頭部給添加上去了,沒有有辦法實(shí)現(xiàn)像AT固件一樣直傳?
    發(fā)表于 07-10 06:59

    藍(lán)牙模塊無線世界的傳輸

    在數(shù)字化、智能化的今天,藍(lán)牙技術(shù)已成為我們生活中不可或缺的一部分。藍(lán)牙無處不在,連接著我們的每一個智能設(shè)備。而在這些設(shè)備的背后,有一個神秘的角色在默默付出,那就是藍(lán)牙模塊。今天,就讓我們一起走進(jìn)
    發(fā)表于 07-03 18:40

    請問ESP32 BLE如何主動發(fā)送數(shù)據(jù)

    我在做ESP32 BLE,通過串口數(shù)據(jù)。看到的例程都是手機(jī)app端讀操作時觸發(fā)ESP_GATTS_READ_EVT事件,然后發(fā)送
    發(fā)表于 06-21 11:25

    ESP32-S3使用tcp_server例程,將網(wǎng)絡(luò)數(shù)據(jù)和串口數(shù)據(jù)延遲過高怎么解決?

    使用tcp_server例程修改,將tcp數(shù)據(jù)與串口數(shù)據(jù)進(jìn)行,串口→
    發(fā)表于 06-06 06:06

    輕松搞懂和非的區(qū)別

    和非數(shù)據(jù)通信中的兩種不同模式,各自有其適用場景和優(yōu)勢。
    的頭像 發(fā)表于 06-05 12:03 ?9816次閱讀
    輕松搞懂<b class='flag-5'>透</b><b class='flag-5'>傳</b>和非<b class='flag-5'>透</b><b class='flag-5'>傳</b>的區(qū)別

    esp32-c3作為中轉(zhuǎn)站實(shí)現(xiàn)數(shù)據(jù)?

    如題,想用esp作為中轉(zhuǎn)站實(shí)現(xiàn)數(shù)據(jù)
    發(fā)表于 06-05 08:16

    關(guān)于博達(dá)工具新版本升級公告

    感謝您一直以來對博達(dá)智聯(lián)自主研發(fā)的遠(yuǎn)程工具的支持與信任!為提升廣大用戶的操作體驗(yàn),博達(dá)智聯(lián)團(tuán)隊(duì)經(jīng)過不懈努力,不斷優(yōu)化產(chǎn)品功能,將工具進(jìn)行了全面的升級,即刻發(fā)出全新版本。相比于之
    的頭像 發(fā)表于 03-19 08:33 ?473次閱讀
    關(guān)于博達(dá)<b class='flag-5'>透</b><b class='flag-5'>傳</b>工具新版本升級公告

    PSoC通過wifi模組的UART bootload經(jīng)常失敗怎么解決?

    我工程中有個應(yīng)用,需要通過TCP/IP連接wifi模組,wif模組通過UART升級PSOC, 發(fā)現(xiàn)經(jīng)常升級失敗,成功率不到10%。每次都是剛開始的時候返回err 0x0004.
    發(fā)表于 02-22 06:32

    數(shù)據(jù)選擇低功耗WiFi模塊還是選擇低功耗藍(lán)牙模塊?

    WiFi模塊和藍(lán)牙模塊,針對部分領(lǐng)域的低功耗數(shù)據(jù)需求,工程師是該選擇低功耗WiFi模塊還是低功耗藍(lán)牙模塊呢? ? 數(shù)據(jù)
    的頭像 發(fā)表于 01-10 18:44 ?748次閱讀
    <b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>透</b><b class='flag-5'>傳</b>選擇低功耗WiFi模塊還是選擇低功耗藍(lán)牙模塊?
    主站蜘蛛池模板: 99国产精品久久久久久久日本竹| 国产成人亚洲精品老王| 亚洲欧洲日产国码中学| 亚洲风情无码免费视频| 亚洲精品久久无码AV片WWW| 亚洲精品天堂在线| 伊人久久大香线蕉综合电影网| 一个人免费视频在线观看| 2021精品高清卡1卡2卡3麻豆| 9久久99久久久精品齐齐综合色圆 9久高清在线不卡免费无吗视频 | 日本19禁啪啪吃奶大尺度| 日韩一区精品视频一区二区| 特大巨黑人吊性xxxxgay| 亚洲AV国产福利精品在现观看 | 久久er国产精品免费观看2| 麻豆一区二区免费播放网站| 欧洲兽交另类AVXXX| 午夜福利32集云播| 在教室轮流被澡高H林萌| 99热热在线精品久久| 风流少妇BBWBBW69视频| 果冻传媒2021一二三区| 久久久久嫩草影院精品| 啪啪羞羞GIF男女0OXX动态图| 视频区 国产 欧美 日韩| 亚洲综合久久一本伊伊区| 511麻豆视传媒精品AV| 攻把受做哭边走边肉楼梯PLAY| 饥渴的新婚女教师| 欧美极限扩肛| 亚洲高清无在码在线电影| 中文字幕成人| 国产69精品久久久久观看软件| 精品国产品国语在线不卡丶| 女性酥酥影院| 亚洲AVAV天堂AV在线网爱情| 777精品久无码人妻蜜桃| 国产高清视频在线播放www色| 久久高清一级毛片| 日日日操操操| 伊人久久大线蕉香港三级|