ESP8266 使用TCP通信协议

2023-10-27

TCP服务器示例

	#include <ESP8266WiFi.h>
	int port = 8888;  //Port number
	WiFiServer server(port);
	 
	//Server connect to WiFi Network
	const char *ssid = "xx";  //Enter your wifi SSID
	const char *password = "xx";  //Enter your wifi Password
	 
	int count=0;
	 
	// 复位或上电后运行一次:
	void setup() {
	    //在这里加入初始化相关代码,只运行一次:
	    Serial.begin(115200);
	     
	    Serial.println();
	     
	    WiFi.mode(WIFI_STA);
	    WiFi.begin(ssid, password); //Connect to wifi
	     
	    // Wait for connection
	    Serial.println("Connecting to Wifi");
	    while (WiFi.status() != WL_CONNECTED) {
	        delay(500);
	        Serial.print(".");
	        delay(500);
	    }
	     
	    Serial.println("");
	    Serial.print("Connected to ");
	    Serial.println(ssid);
	     
	    Serial.print("IP address: ");
	    Serial.println(WiFi.localIP());
	    Serial.print("port:");
	    Serial.println(port);
	    server.begin();
	}
	 
	//一直循环执行:
	void loop() {
	    // 在这里加入主要程序代码,重复执行:
	    WiFiClient client = server.available();
	     
	    if (client) {
	        if(client.connected())
	        {
	            Serial.println("Client Connected");
	        }
	         
	        while(client.connected()){
	            while(client.available()>0){
	                // read data from the connected client
	                Serial.write(client.read());
	            }
	            //Send Data to connected client
	            while(Serial.available()>0)
	            {
	                client.write(Serial.read());
	            }
	        }
	        client.stop();
	        Serial.println("Client disconnected");
	    }
	}
							

TCP客户端示例

	#include <ESP8266WiFi.h>
	 
	#define SSID "xx" //这里改成你的wifi名字
	#define PASSWD  "xx"//这里改成你的wifi密码
	 
	const uint16_t port = 8888;
	const char * host = "192.168.0.111"; // ip or dns
	WiFiClient client;//创建一个tcp client连接
	 
	// 复位或上电后运行一次:
	void setup() {
	    //在这里加入初始化相关代码,只运行一次:
	    Serial.begin(115200);
	     
	    WiFi.mode(WIFI_STA);
	    WiFi.begin(SSID,PASSWD);
	     
	    Serial.println("Wait for WiFi... ");
	    //等待wifi连接成功
	    while (WiFi.status() != WL_CONNECTED) {
	        Serial.print(".");
	        delay(500);
	    }
	     
	    Serial.println("");
	    Serial.println("WiFi connected");
	    Serial.print("IP address: ");
	    Serial.println(WiFi.localIP());
	     
	    delay(500);
	}
	 
	//一直循环执行:
	void loop() {
	    // 在这里加入主要程序代码,重复执行:
	    Serial.print("connecting to ");
	    Serial.println(host);
	     
	    if (!client.connect(host, port)) {
	        Serial.println("connection failed");
	        Serial.println("wait 5 sec...");
	        delay(5000);
	        return;
	    }
	     
	    // 发送数据到Tcp server
	    Serial.println("Send this data to server");
	    client.println(String("lingzhilab"));
	     
	    //读取从server返回到响应数据
	    String line = client.readStringUntil('\r');
	    Serial.println(line);
	     
	    Serial.println("closing connection");
	    client.stop();
	     
	    Serial.println("wait 5 sec...");
	    delay(5000);
	}
							
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ESP8266 使用TCP通信协议 的相关文章

  • ESP8266-01高阶——OTA下载

    ESP8266高阶 OTA下载 OTA简介 OTA怎么用 基本控制原理 烧录代码 高级用法 题外话 工程资料 OTA简介 什么是OTA下载 空中下载 OTA 是通过移动通信的空中接口实现对移动终端设备及SIM卡数据进行远程管理的技术 之前做
  • wifi类物联产品配网之web

    文章目录 wifi类物联产品配网之web web配网介绍 web配网实现 wifi类物联产品配网之web 上接wifi类物联产品配网前言 web配网介绍 web主要连接设备建立的wifi 热点后 以网页的形式 让用户输入wifi ssid和
  • 一、利用AT指令配置esp8266——esp8266WIFI模块初探&STM32串口通信再探

    文章目录 一 esp8266初探 1 esp8266简介 2 esp8266使用方式 什么是AT指令 通过何种方式发送AT指令 二 STM32串口通信再探 1 printf 函数与串口中断函数 2 例子 小试牛刀 3 例子 再进一步 三 局
  • ESP8266与网络服务器实时通讯

    目前 所有已呈现的通信都是基于请求响应方法的 其中一个实体正在发送请求 另一实体正在发送回响应 但是在某些情况下 您需要ESP8266模块与服务器之间的实时通信 而不仅仅是事务 实时通讯协议 ESP8266流数据 要从ESP8266流传输数
  • 3.2 ATK-ESP8266 WIFI模块-烧录固件

    ATK ESP8266 WIFI模块 烧录固件 一丶前期准备 1 在某宝买的ESP8266模块 2 烧录模式引脚 IO 0引脚接GND 另外一个不用接 左边四个 正常连接串口即可 3 烧录固件 按照原子哥给的资料 烧写方式有误 在烧录固件
  • ESP8266+天猫精灵+贝壳物联 简单直接点亮一个LED灯

    本文将介绍如何通过天猫精灵透过贝壳物联来使ESP8266点亮一个灯 如果大家途中遇到什么奇葩问题 请努力移驾各大搜索神器或查看贝壳物联帮助文档解决 正所谓冤有头 本文主要分为以下几个部分哦 硬件部分 软件下载 软件工具和软件固件 固件刷写
  • ESP8266EX使用SDK开发串口调试乱码

    目录 问题如图所示 问题分析 问题解决 问题如图所示 问题分析 有输出信号 说明有数据产生 可能原因 波特率不匹配 时钟频率不对 问题解决 不断调整串口调试助手的波特率9600 115200 不管用 把ESP8266的默认波特率改为9600
  • Arduino core for ESP8266 安装失败问题处理方法

    文章目录 目的 离线开发板数据包 鱼 安装最新开发板数据包 渔 总结 目的 理论上Arduino IDE安装开发板数据包是非常方便的 不过在国内的网络环境下有时候就会很纠结 另外Arduino IDE对于下载数据这块也存在问题 经常下着下着
  • esp8266学习笔记(5)——连接wifi、AP、UDP通信

    终于开始接触网络了 基础不行 这个摸索了有点久 还好网上资料多 有些细节还是没有怎么吃透 哈哈 开始联网了 ESP8266有三种模式 station模式 0x01 soft AP模式 0x02 soft AP station模式 0x03
  • ESP8266-NodeMCU网络服务器(一)- 数字时钟制作

    文章目录 效果 所需环境 实现步骤 原理 HTML JS代码 上传文件到闪存系统 上传程序 效果 所需环境 ESP8266 NodeMCU 开发板 以下简称NodeMCU ESP8266库 Arduino IDE 代码编写工具 无线 热点
  • ESP8266引脚参考详解

    ESP8266引脚参考详解 ESP8266 ESP12 E芯片自带17个GPIO管脚 并不是所有的gpio在所有的ESP8266开发板中都是公开的 有些gpio不推荐使用 有些gpio有非常具体的功能 通过本指南 您将学习如何正确使用ESP
  • ESP8266恒温控制器

    本文 我们将使用ESP8266构建家用恒温器 温控器将具有以下功能 它将从DHT22温度传感器读取温度 它将温度与所需温度进行比较 如果高于它 它将触发继电器关闭 如果低于它 它将触发继电器打开 在此之前 首先了解下ESP8266如何保持温
  • 从零开始的ESP8266探索(16)-扫描网络演示

    文章目录 目的 使用演示 同步扫描 异步扫描 总结 目的 ESP8266可以通过扫描获取周围环境中的WiFi热点 所以我们也可以先扫描一下再决定连接到某个网络上 这也是一种常见的应用场景 使用演示 同步扫描 使用下面代码进行同步扫描 同步扫
  • ESP8266开发板+mysql数据库+DHT11

    wemos D1 wifi ESP8266开发板连接mysql wemos D1 wifi ESP8266开发板是一款基于esp8266的开发板 使用这个开发板可以很方便的连接wifi 同时这个开发板有很多IO口供我们使用 这个开发板的可以
  • ESP-NOW:竟然还有如此好用的无线通信方式

    用 Arduino 玩转 ESP32 系列历史文章目录 ESP32 概述与 Arduino 软件准备 ESP32 GPIO接口编程入门 蓝牙翻页笔 蓝牙键盘与PPT 控制器 B 站粉丝计数器 Siri 语音识别控制 LED 灯 Siri 语
  • ESP8266_MQTT协议

    1 了解下MQTT协议 虽然上一篇用起来了MQTT 但是并不十分了解 基本就局限于 发布主题是发送数据 订阅主题是接收数据 今天就再好好了解一下吧 分享下网页版的 MQTT协议中文版 链接 Introduction MQTT协议中文版 1
  • wifi类物联产品配网前言

    文章目录 1 SmartConfig配网 仅支持2 4G 2 web方式配网 3 一键配网 BLE 传统蓝牙和wifi 3 1 BLE方式 3 2 传统蓝牙方式 3 3 wifi方式 3 4 4G 网口或其他直连设备 3 5 其他配网方式
  • 使用ESP8266接入“天猫精灵”控制七彩灯(WS2812)的颜色/亮度-开源

    目录 演示视频 1 准备工作 1 1 原理 1 2 使用的硬件以及硬件连接图 1 3 开发环境准备 Arduino开发环境 安装ESP8266的扩展 安装blinker Arduino库 安装blinker APP 下载ws2812的驱动库
  • 制作OLED图标

    制作OLED图标 陈拓 2021 06 24 2021 06 26 1 概述 制作用于OLED显示的图标 获取C语言图像点阵数据 2 图标库 先准备图标图像 可以从图标库中找需要的图案 下面两个是我常用的图标网站 2 1 Font Awes
  • ESP8266 for Arduino IDE (xtensa-lx106-elf-gcc) 和 std::map 链接错误

    是否可以将地图与 ESP8266 一起用于 Arduino 包 这是我的代码 include

随机推荐

  • 天池布匹瑕疵检测代码实现问题

    天池布匹瑕疵检测GitHub代码实现 一 数据处理 转换成coco数据集 实现过程遇到的问题 数据集处理部分分为两组 每组都要删除一次模板图片 GitHub上少了第二次数据删除处理操作 后续数据处理操作都是合理的 没有问题 下一节会贴出预训
  • unity 利用PlayerPrefs实现关卡解锁功能

    关卡结构 在关卡中确认过关的地方 添加 public int jiesuo jiesuo SceneManager GetActiveScene buildIndex PlayerPrefs SetInt jiesuo jiesuo 然后在
  • Centos8 配置静态IP

    安装centos 8之后 重启启动网络时 会出现以下报错 报错信息如下 Failed to start network service Unit network service not found 意思为无法重启网络服务 原因是无法找到ne
  • Pig基本语法项目实战

    Apache Pig是一个高级过程语言 适合使用Hadoop和Mapreduce平台来查询大型半结构化数据 当Pig处理数据时 Pig本身 会在后台生成一系列得MapReduce操作来执行任务 这个过程对用户来说是透明的 用于执行Pig L
  • mysql连接符_【MySQL】字符串连接

    CONCAT 函数 可以连接一或者多个字符串 不过其中如果有 Null 就直接返回 Null mysql gt select concat 11 22 33 44 concat 11 22 33 44 11223344 1 row in s
  • 2022年泰迪杯数据分析_B题:银行客户忠诚度分析赛题数据_任务五

    银行客户长期忠诚度预测建模 此处忠诚度的指标选取为客户的流失情况 该指标分为两类 长期客户忠诚用1表示 不忠诚则用0表示 对此预测建模中 使用到机器学习分类中的随机森林分类 import pandas as pd long data26 p
  • 华为OD机试真题- 阿里巴巴找黄金宝箱(V)-2023年OD统一考试(B卷)

    题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上 无意中发现了强盗集团的藏宝地 藏宝地有编号从0 N的箱子 每个箱子上面贴有一个数字 阿里巴巴念出一个咒语数字k k
  • excel文件隔行删除数据并保存

    现阶段用代码实现 隔四行删除数据 import pandas as pd 读取 Excel 文件 excel file xxxx xlsx df pd read excel excel file rows to keep 要删除的行数 sk
  • 超详细!!服务器搭jupyter notebook及挂起和关闭进程

    再次警告 没有在小小demo上试验成功的代码不要放到服务器上造垃圾 一 服务器上配置jupyter 1 1 ssh连接到服务器 cd到你想建立jupyer的服务器目录下执行 jupyter notebook generate config
  • 【今日CV 计算机视觉论文速览 第98期】Wed, 10 Apr 2019

    今日CS CV 计算机视觉论文速览 Wed 10 Apr 2019 Totally 67 papers 上期速览 更多精彩请移步主页 Interesting 通用物体检测框架 在不需要先验知识的强化下实现了横跨多个域的目标检测 这要通过引入
  • 浅谈get和post的区别

    一 不完全正确的网红答案 GET的URL会有长度上的限制 则POST的数据则可以非常大 POST比GET安全 ET请求的数据会附在URL之后 POST把提交的数据则放置在是HTTP包的包体中 二 为什么是不完全正确的答案 HTTP协议对GE
  • python命令行执行函数的方法

    方法一 直接调用函数运行 这种是最简单且直观的方法 def task print running task task 如果是在类中 也是如此 class Task def task self print running task Task
  • python 为什么so库import失败?

    为什么so库import失败 查看支持的so后缀名 修改对应so文件名称 import importlib machinery print importlib machinery all suffixes 例如python3 6升级3 8后
  • log日志使用教程(slf4j log4j logback)

    目录 一 前言 二 常用日志框架 框架对比 2 1 slf4j 框架 2 2 logback 框架 配置 Appender 日志级别过滤filter 2 3 log4j2框架 三 log4j vs logback 推荐logback 一 前
  • 第三大的数

    给定一个非空数组 返回此数组中第三大的数 如果不存在 则返回数组中最大的数 要求算法时间复杂度必须是O n 该题来自力扣题库 示例 示例 1 输入 3 2 1 输出 1 第三大的数是 1 示例 2 输入 1 2 输出 2 第三大的数不存在
  • python中的tkinter包的使用-Scale尺度

    下面这个例子定义了一个尺度 从5到11 拖动滚动条 在label上显示当前尺度 窗口界面 拖动滚动条 代码 import tkinter as tk window tk Tk window title my window window ge
  • 重中之重-K8S的初识

    重中之重 K8S的初识 一 kubernetes概述 1 K8S的含义 2 K8S的优点 3 K8S的特性 4 Kubernetes 集群架构与组件 二 kubernetes架构核心组件 1 Master组件 2 配置存储中心 3 Node
  • JS 基础面试题

    前端全部面试题 https blog csdn net qq 40055200 article details 104637574 1 基本数据类型有哪几种 高频 了解包装对象吗 undefined null boolean string
  • 考试系统web服务器

    servlet jsp js css 基础知识 jqueary 框架的使用 环境tomcat eclipse mysql workbench 项目地址 https github com cuizehui ExamSystem 考试系统的敏捷
  • ESP8266 使用TCP通信协议

    TCP服务器示例 include