ESP32開發-作為TCP客戶端發送數據到網絡調試助手

??代碼(作為TCP客戶端)??

#include <SPI.h>
#include <EthernetENC.h>  // 使用EthernetENC庫// 網絡配置
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};  // MAC地址
IPAddress ip(192, 168, 1, 100);      // ESP32的IP
IPAddress serverIP(192, 168, 1, 150); // 電腦IP(網絡調試助手)
const int serverPort = 8080;         // 電腦端口EthernetClient client;  // TCP客戶端void setup() {Serial.begin(115200);delay(1000);// 初始化ENC28J60SPI.begin(18, 19, 23, 5);  // SCK=18, MISO=19, MOSI=23, CS=5Ethernet.begin(mac, ip);Serial.println("ESP32 TCP Client Ready");Serial.print("Local IP: ");Serial.println(Ethernet.localIP());
}void loop() {// 如果未連接,嘗試連接服務器if (!client.connected()) {Serial.println("Connecting to server...");if (client.connect(serverIP, serverPort)) {Serial.println("Connected to server!");client.print("Hello from ESP32!");  // 連接后立即發送一條消息} else {Serial.println("Connection failed!");}delay(2000);  // 重試間隔}// 如果已連接,檢查是否有數據可讀if (client.available()) {char c = client.read();Serial.write(c);  // 打印接收到的數據}// 示例:每5秒發送一次數據(可選)static unsigned long lastSend = 0;if (client.connected() && millis() - lastSend >= 5000) {lastSend = millis();client.print("ESP32 heartbeat");  // 定時發送心跳數據Serial.println("Sent heartbeat");}
}

??功能說明??

  1. ??作為TCP客戶端??:

    • 自動連接電腦(192.168.1.150:8080)。
    • 連接成功后發送"Hello from ESP32!"
    • 每5秒發送一次心跳數據("ESP32 heartbeat")。
  2. ??接收數據??:

    • 實時打印從服務器(網絡調試助手)接收的數據。
  3. ??自動重連??:

    • 如果斷開連接,每2秒嘗試重連一次。

??使用步驟??

  1. ??硬件接線??:

    • 確保ENC28J60與ESP32正確連接(SCK=18, MISO=19, MOSI=23, CS=5)。
    • ENC28J60使用??3.3V供電??。
  2. ??電腦端準備??:

    • 打開網絡調試助手,選擇??TCP服務器模式??,監聽端口8080
    • 確保電腦IP為192.168.1.150(或修改代碼中的serverIP)。
  3. ??ESP32操作??:

    • 上傳代碼后,打開串口監視器(波特率115200)。
    • 觀察連接狀態和接收到的數據。

效果:

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/81316.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/81316.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/81316.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

HTML5 WebSocket:實現高效實時通訊

一、引言 在當今的 Web 開發領域,實時通訊功能變得越來越重要。例如在線聊天、實時數據更新等場景都需要客戶端與服務器之間能夠進行高效的雙向數據傳輸。HTML5 引入的 WebSocket 協議為我們提供了一種強大的解決方案,它在單個 TCP 連接上實現了全雙工通訊,極大地改善了傳統…

速通Ollama本地部署DeepSeek-r1

下載 Ollama 前往 Ollama官網 下載客戶端&#xff0c;下載完成后點擊Install安裝即可。 完成后會自動安裝在C:盤的AppData文件夾下&#xff0c;命令行輸入ollama后&#xff0c;顯示下圖中的信息表明安裝成功。 下載模型 在官網界面點擊 DeepSeek-R1 超鏈接 跳轉到DeepSeek安裝…

總結C++中的STL

1.STL 概述 STL 即標準模板庫&#xff0c;是 C 標準程序庫的重要組成部分&#xff0c;包含常用數據結構和算法&#xff0c;體現了泛型化程序設計思想&#xff0c;基于模板實現&#xff0c;提高了代碼的可復用性 2.容器 2.1 序列容器&#xff1a; 1. vector 特性&#xff…

自動駕駛-一位從業兩年的獨特視角

時間簡介 2023.03 作為一名大三學生&#xff0c;加入到某量產車企&#xff0c;從事地圖匹配研發 2023.07 地圖匹配項目交付&#xff0c;參與離線云端建圖研發 2023.10 拿到24屆校招offer 2024.07 正式入職 2025.01 離線云端建圖穩定&#xff0c;開始接觸在線車端融圖研發 自動…

《軟件設計師》復習筆記(11.1)——生命周期、CMM、開發模型

目錄 一、信息系統生命周期 系統規劃階段 系統分析階段&#xff08;邏輯設計&#xff09; 系統設計階段&#xff08;物理設計&#xff09; 系統實施階段 系統運行與維護階段 二、能力成熟度模型&#xff08;CMM/CMMI&#xff09; CMM 五級模型 CMMI 兩種表示方法 真題…

1.67g 雨晨 22635.5305 Windows 11 企業版 23H2 極速增強版

五一特別制作 &#xff08;主要更新簡述&#xff09; 全程由最新YCDISM2025裝載制作 1、可選功能&#xff1a; 添加&#xff1a; Microsoft-Windows-LanguageFeatures-Basic-en-us-Package Microsoft-Windows-LanguageFeatures-OCR-en-us-Package 2、功能增強&a…

爬蟲逆向思維

爬蟲逆向思維是指從目標網站的反爬機制入手&#xff0c;通過分析其防護邏輯來突破限制&#xff0c;獲取數據的思路。以下是核心要點&#xff1a; 核心方向 - 分析反爬手段&#xff1a;如請求頭校驗、IP封禁、驗證碼、動態數據加密等。 - 模擬真實行為&#xff1a;偽造瀏覽器指…

手撕哈希表

引入&#xff1a;unordered_set /map是什么&#xff1f; 庫里面除開set和map&#xff0c;還有unordered_set 和 unordered_map&#xff0c;區別在于&#xff1a; ①&#xff1a;set和map的底層結構是紅黑樹&#xff0c;而unordered_set和unordered_map的底層是哈希表 ②&…

基于Docker的內網穿透實戰:frp 0.68 + Nginx最佳實踐

在實際應用中&#xff0c;我們常常遇到這樣的需求&#xff1a; 家里的NAS服務器、開發環境、測試服務&#xff0c;需要暴露到公網訪問 企業內部系統&#xff0c;僅允許在特定域名或端口暴露&#xff0c;但沒有公網IP 多個內網應用&#xff0c;希望通過一個統一的外網入口訪問…

完美中國制度流程體系建設(70頁PPT)(文末有下載方式)

資料解讀&#xff1a;《完美中國制度流程體系建設》 詳細資料請看本解讀文章的最后內容。 該文檔圍繞完美中國制度流程體系建設展開&#xff0c;從風險管理流程等前期工作切入&#xff0c;全面剖析企業制度流程體系框架&#xff0c;結合案例指出常見問題&#xff0c;評估完美公…

計算機組成原理實驗(5) 堆棧寄存器實驗

實驗五 堆棧寄存器實驗 一、實驗目的 1、熟悉堆棧概念 2、熟悉堆棧寄存器的組成和硬件電路 二、實驗要求 按照實驗步驟完成實驗項目&#xff0c;對4個堆棧寄存器進行讀出、寫入數據操作。 三、實驗說明 3.1 堆棧寄存器組實驗構成&#xff08;圖3-1&#xff09; 本系統…

RAGFlow報錯:ESConnection.sql got exception

環境&#xff1a; Ragflowv0.17.2 問題描述&#xff1a; RAGFlow報錯&#xff1a;ESConnection.sql got exception _ming_cheng_tks, 浙江, operatorOR;minimum_should_match30%) 2025-04-25 15:55:06,862 INFO 244867 POST http://localhost:1200/_sql?formatjson […

鼠標滾動字體縮放

在VsCode中編輯文件時&#xff0c;有時候發現Ctrl鼠標滾輪并不能縮放字體&#xff0c;下面是啟用這個功能的方法。 第一步&#xff1a; 進入設置&#xff0c;可以從左下角按鈕菜單進入&#xff0c;也可以使用【Ctrl,】。 第二步&#xff1a; 啟用鼠標滾輪縮放功能 第三步&…

深度學習·經典模型·VisionTransformer

VIT embedding處理與標準的Transformer不同&#xff0c;其他基本一致 E&#xff4d;bedding Graph: ( H , W , C ) (H,W,C) (H,W,C) Patch: ( N , P 2 C ) (N,P^2C) (N,P2C),其中 N H ? W P 2 N\frac{H*W}{P^2} NP2H?W?, P P P是patch的大小 注意的是,論文了保留與Bert的…

Python Selenium 完全指南:從入門到精通

Python Selenium 完全指南&#xff1a;從入門到精通 &#x1f4da; 目錄 環境準備與基礎入門元素定位與交互操作等待機制與異常處理面向對象封裝與框架設計進階技巧與最佳實踐性能優化與調試技巧實戰案例分析 環境準備與基礎入門 1. 安裝 Selenium 與瀏覽器驅動 安裝 Selen…

基于ffmpeg的音視頻編碼

1 音頻編碼 本質上是由pcm文件轉到一個協議文件 比如說aac協議 1.1 音頻基本知識回歸 比特率 比特率是指單位時間內傳輸或處理的比特&#xff08;bit&#xff09;數量&#xff0c;通常用 bps&#xff08;bits per second&#xff0c;比特每秒&#xff09;來表示。它是衡量數…

BT137-ASEMI機器人功率器件專用BT137

編輯&#xff1a;LL BT137-ASEMI機器人功率器件專用BT137 型號&#xff1a;BT137 品牌&#xff1a;ASEMI 封裝&#xff1a;TO-220F 批號&#xff1a;最新 引腳數量&#xff1a;3 封裝尺寸&#xff1a;如圖 特性&#xff1a;雙向可控硅 工作結溫&#xff1a;-40℃~150℃…

攻防世界 dice_game

dice_game ??????dice_game (1) motalymotaly-VMware-Virtual-Platform:~/桌面$ file game game: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]254…

Astral Ascent 星界戰士(星座上升) [DLC 解鎖] [Steam] [Windows SteamOS macOS]

Astral Ascent 星界戰士&#xff08;星座上升&#xff09; [DLC 解鎖] [Steam] [Windows & SteamOS & macOS] 需要有游戲正版基礎本體&#xff0c;安裝路徑不能帶有中文&#xff0c;或其它非常規拉丁字符&#xff1b; DLC 版本 至最新全部 DLC 后續可能無法及時更新文章…

git中reset和checkout的用法

git reset&#xff1a;重置分支的歷史與工作區? 核心作用??&#xff1a;移動當前分支的指針&#xff08;即改變分支的歷史&#xff09;&#xff0c;并可選地修改暫存區&#xff08;Index&#xff09;和工作目錄&#xff08;Working Directory&#xff09;。常用于撤銷提交或…