本帖最后由 lz-esp-link 于 2019-9-25 09:56 编辑

本帖主要讲解ESP8266 WIFI功能关于TCP协议网络传输的应用,这里演示了ESP8266作为TCP客户端的示例:

1、硬件

零知ESP8266开发板

2、软件

代码如下:

[mw_shl_code=cpp,true]/**********************************************************

*    文件: tcp-client.ino      by 零知实验室(www.lingzhilab.com)

*    -^^- 零知开源,让电子制作变得更简单! -^^-

*    时间: 2019/06/17 12:32

*    说明:

************************************************************/

#include

#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);

}[/mw_shl_code]

注:上述代码中需要填写自己的Wifi热点ssid和密码以及电脑所在局域网分配的IP地址(在零知工具箱-网络调试界面可以选择IP,这两处是一致的)。

3、验证测试

首先打开零知工具箱的网络调试窗口,然后选择TCP服务端,并选择IP和端口:

1.jpg (100.86 KB, 下载次数: 6)

2019-9-23 17:56 上传

然后点击【连接】,这样就在电脑端开启了一个TCP服务器,然后就可以和ESP8266进行通信了:

2.jpg (170.96 KB, 下载次数: 5)

2019-9-23 17:56 上传

php实现tcp连接esp8266,【零知ESP8266教程】WIFI TCP协议通信 TCP客户端示例相关推荐

  1. 【零知ESP8266教程】快速入门10-使用PWM进行调光

    前面的分享热身完毕,接下来,我们要进入更专业电子技术的深入哦! PWM科普:PWM,英文名Pulse Width Modulation,是脉冲宽度调制缩写,它是通过对一系列脉冲的宽度进行调制,等效出所 ...

  2. 【零知ESP8266教程】快速入门5-使用按键来控制你的灯

    上节课,我们已经学习了如何制作一个简易交通灯,那么如何去控制一个LED的亮或者灭呢?此次试验采用按键来控制我们的LED,实现LED的简单控制. 一.工具原料 电脑,windows系统 ESP8266开 ...

  3. 【零知ESP8266教程】快速入门8-读取模拟数值

    上次我们一起做了抢答器后,脑回路是不是特别快啦.这时候我们趁热打铁,思考一下.在前面我们一直使用的是数字引脚(比如:开发板上标注的D0.D1.D2等),但是很多情况下我们需要测量一个模拟量,比如读取某 ...

  4. esp8266灯上电闪一下_【零知ESP8266教程】快速入门2-点亮外部LED灯

    [零知ESP8266教程]快速入门2-点亮外部LED灯 [复制链接] 一.工具原料 电脑,windows系统 ESP8266开发板 micro-usb线 LED灯1个 220Ω 电阻1个 面包板一个+ ...

  5. 【零知ESP8266教程】blynk控制RGB LED

    本文讲解使用blynk app+服务器(本地) + 零知ESP8266硬件的方法,通过手机APP控制RGB led三色灯. 硬件 零知ESP8266 RGB LED 杜邦线 2.准备 关于手机APP与 ...

  6. esp8266 接收udp广播_【零知ESP8266教程】AP模式下WIFI UDP协议通信示例

    [mw_shl_code=cpp,true]/********************************************************** *    文件: udp-serve ...

  7. linux tcp连接计算机,计算机基础知识——linux socket套接字tcp连接分析

    2016.7.4 今天晚上对项目顶层文件(daemon)进行了分析,对其中的TCP连接进行具体的代码级分析. 1.需求分析 首先得知道我们这里为什么要用TCP连接,我们的整个测试系统是由上位机作为客户 ...

  8. 消息队列一直建立tcp连接_云架构那些事儿:为什么我的TCP连接建立异常?

    搞IT的同学无论是做开发的.做测试的.做运维的一定都遇到过以下几种报错,导致服务调用失败: connection timeout read timeout connection reset by pe ...

  9. 网络原理 | 传输层重点协议之TCP协议(TCP连接的三次握手与四次挥手、TCP的安全机制与效率机制)

    目录 TCP协议 安全机制 确认应答机制 超时重传机制 连接管理机制 三次握手 四次挥手 流量控制机制 ​编辑拥塞控制机制 效率机制 滑动窗口机制 延迟应答机制 捎带应答机制 TCP协议 · 传输层的 ...

最新文章

  1. ospfdr选举规则_OSPF-DR与BDR的选举及作用
  2. 分享jQuery的常用技巧12招
  3. sqlserver中将行数据转为Xml文件格式
  4. 69道Java Spring 面试笔试题
  5. 计算机共享无法打开,局域网其他计算机就无法打开我的共享文件
  6. alter在mysql_MySQL中ALTER用法小结
  7. zigbee是什么,为什么说它最适合智能家居设备
  8. mysql如何植入到oracle_MySQL性能优化之数据库Recovery改进策略
  9. dynamips中网卡参数如何和网络连接中的具体网卡匹配
  10. 2008 r2 server sql 中文版补丁_Microsoft SQL Server 2008 R2 SP3补丁 32位 官方免费版
  11. 【Markdown】希腊字母表
  12. 常用元器件使用方法12:单节锂电池充电管理芯片XT2055的使用方法
  13. rk3128 平台rk818电源管理驱动移植
  14. App Thinning(为什么苹果app上传时的包比在appStore下载下来的包大很多)
  15. Linux系统中OpenSSH的安装和配置(转)
  16. xen(三)xl 工具使用
  17. android qq接口,手机QQ Scheme接口
  18. Oracle中CHR()函数使用
  19. 【ZLR-T81 200A漏电继电器】
  20. S-属性定义与L-属性定义

热门文章

  1. python车牌识别系统+车辆管理+计费系统(图像识别)django框架 计算机毕业设计
  2. 其他问题怎么创建百度指数
  3. Java、JSP便利商店库存管理系统
  4. jetson nano安装ROS教程
  5. 有照片换发型的软件吗?看完这篇文章就知道了
  6. 瑞萨RH850 CS+环境下设置堆和栈空间
  7. php实现微信小程序获取用户openid,昵称和头像方法
  8. php里那些函数是获取字符串长度,【后端开发】PHP获取字符串长度函数strlen()函数...
  9. java占用内存多大_[转帖]一个Java工具到底占用多大内存?
  10. 7 Win98 MS—DOS