esp-idf:master分支
硬件需求Esp32-s3開發(fā)板
TCP介紹:
傳輸控制協(xié)議(TCP,Transmission Control Protocol)是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。
TCP分為服務(wù)端Server和客戶端Client,服務(wù)端創(chuàng)建服務(wù)等待客戶端連接,客戶端連接后即可與服務(wù)端相互發(fā)送消息,服務(wù)端只有一個,客戶端可以是N個。
可以同時連接服務(wù)端,服務(wù)器不能主動去連接客戶端,必須客戶端主動連接服務(wù)端才能相互發(fā)送消息。
02Tcp_client整體流程:
1、編譯官方tcp_client例程(需要配置下面會詳細介紹),燒錄到ESP32-S3開發(fā)板。
2、使用TCP調(diào)試助手創(chuàng)建TCP Server(電腦必須與開發(fā)板在同一路由器下)。
3、重啟ESP32,創(chuàng)建TCP Client,開始連接電腦創(chuàng)建的服務(wù)器。
4、相互發(fā)送數(shù)據(jù)。
一.Tcp_client例程分析
1.初始化NVS、WiFi連接上WiFi后創(chuàng)建一個tcp_client任務(wù)。
WiFi連接函數(shù):example_connect()WiFi信息通過menuconfig 配置。
idf.py menuconfig 進入配置菜單,配置連接的WiFi名稱和密碼(要和服務(wù)器端連接到同一路由)。
2.配置遠程連接信息
3.通過menuconfig配置服務(wù)器的IP以及端口號
配置完成后保存退出(服務(wù)器的IP及端口)
4.編譯、燒錄
編譯:idf.py build
燒錄:idf.py -p PORT [-b BAUD] flash
注:只有一個串口時可以直接 idf.py flash
5.電腦端或手機端打開TCP服務(wù)器
6.進入窗口監(jiān)視頁面
idf.py-pPORTmonitor
1)從和日志可以看出,WiFi連接成功后,創(chuàng)建一個sock,sock連接成功。
發(fā)送一條信息給服務(wù)器(Message from ESP32),發(fā)送成功后打印一句 數(shù)據(jù)發(fā)送成功。
2)服務(wù)器編輯內(nèi)容發(fā)送給esp32,在窗口監(jiān)視頁面顯示。
紅色箭頭是接收到的服務(wù)器的消息。
二.tcp_server整體流程:
?1.編譯官方tcp_server例程(需要配置下面會詳細介紹),燒錄到ESP32-S3開發(fā)板。
2.打開tcp調(diào)試助手(電腦or手機必須與開發(fā)板在同一路由器下)。
3.打開tcp調(diào)試助手(電腦or手機必須與開發(fā)板在同一路由器下)。
4.進行通訊發(fā)送數(shù)據(jù)。
Tcp_server例程分析:
1.初始化NVS、WiFi連接上WiFi后創(chuàng)建一個tcp_server任務(wù)。
2.新建 socket、 bind、 listen 和 accept, 最后得到了通信的 socket:用于接收/發(fā)送數(shù)據(jù)。
對應(yīng)log輸出如下:
tcp_server操作流程
? 01打開tcp_server工程,配置menuconfig WiFi、TCP服務(wù)器相關(guān)信息(服務(wù)器端口號,要連接的WiFi)
2.編譯工程
idf.py build
編譯成功輸出固件信息,及燒錄地址
3.燒錄到開發(fā)板
idf.py -p PORT [-b BAUD] flash
注:只有一個串口時可以直接 idf.py flash
4.打開窗口監(jiān)視器
idf.py monitor
可以看到esp32-s3上電以后連接到配置的WiFi,創(chuàng)建了一個tcp_server等待client的連接。
5.打開TCP調(diào)試助手,設(shè)置為client模式 輸入服務(wù)器IP及端口號,點擊連接。
6.編輯文本,向服務(wù)器發(fā)送消息
如下圖所示,服務(wù)器端收到消息。并將收到的信息回發(fā)給client端,
尾聲
獲取更多方案應(yīng)用
記得關(guān)注我們
關(guān)于我們?深圳市啟明云端科技有限公司(簡稱“啟明云端”)是國內(nèi)領(lǐng)先的物聯(lián)網(wǎng)通訊產(chǎn)品和整體解決方案提供商,為全球企業(yè)客戶提供無線通訊產(chǎn)品及場景智能化服務(wù);
公司作為Espressif(樂鑫科技)大中華區(qū)合作伙伴,我們用心整理了你在開發(fā)過程中可能會遇到的問題以及快速上手的簡明教程供開發(fā)小伙伴參考。
你可以通過我們8ms.xyz幫助欄查找,也可以在B站或CSDN搜索啟明云端進行查看!
隨時隨地干貨分享,記得關(guān)注我們哦
原文標題:啟明云端分享|ESP32-S3如何實現(xiàn)tcp_client和tcp_server
文章出處:【微信公眾號:啟明云端科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
ESP32
+關(guān)注
關(guān)注
18文章
960瀏覽量
17114
發(fā)布評論請先 登錄
相關(guān)推薦
評論