Arduino设置esp8266实现局域网通信

硬件准备

  • Arduino UNO主板
  • Esp8266 01s
  • 面包板
  • 杜邦线若干

软件准备

  • Arduino IDE
  • 网络调试助手(PS端或手机均可,手机可在应用市场搜索网络调试精灵)

接线

在这里插入图片描述在这里插入图片描述

Arduino esp8266 01s
3.3V VCC
GND GND
3 TX
2 RX
3.3V CH_PD / EN

使用esp8266只要5个针脚就可以了,分别是 GND、VCC、TX、RX、CH_PD

注意,电源接的是 3.3V;否则会烧坏WiFi 模块
请添加图片描述

AT指令配置程序

#include <SoftwareSerial.h>
SoftwareSerial mySerial(3, 2); // RX, TX 配置 3、2 为软串口
void setup()
{
  Serial.begin(9600);//设置硬串口波特率
  Serial.println("ESP8266 WIFI Test");
  while (!Serial) {//串口是否准备好。
    ;
  }
  Serial.println("hardware serial!");
  mySerial.begin(115200);//设置8266的波特率为115200,初始默认是115200
  mySerial.println("software serial!");
}
void loop()
{
  if (mySerial.available())//获取从软串口读取有效的字节数
  {
    Serial.write(mySerial.read());//硬串口写软串口中读取的数据
  }
  if (Serial.available()) {//获取从硬串口读取有效的字节数
    mySerial.write(Serial.read());//软串口写硬串口中读取的数据
  }
}

在这里插入图片描述

出现上面情况,表示esp无法使用,请检查线路是否接错,或者电压是否保证3.3V

在这里插入图片描述

出现3到4行则表示成功,esp8266可以使用

在这里插入图片描述

修改结束符为 NR 和 CR,发送AT;

在这里插入图片描述

虽然我们测试成功了,但是我们发现回复信息中会出现乱码,原因是软串口(i/o 模拟出来)所能支持的波特率有限,最大支持 9600,因此我们需要修改esp8266波特率为9600

AT+UART=9600,8,1,0,0

在这里插入图片描述

接下来我们修改一下程序中软串口的波特率为9600,重新上传程序试试

mySerial.begin(9600);

在这里插入图片描述
在这里插入图片描述

配置

1.接下来我们来设置esp为混合模式,配置 ESP8266 模块为 AP+STA 模式,开启 wifi 热点

AT+CWMODE=3

在这里插入图片描述

  1. 重启模块使 AP 模式生效
AT+RST

在这里插入图片描述

3.设置模块的AP,热点名字和密码,通道号以及加密方式

AT+CWSAP="Lime","12345678",1,4

在这里插入图片描述

通道号为 1,加密方式为:WPA_WPA2_PSK

在这里插入图片描述

4.启动多连接,esp作为服务器,最多支持 5 个客户端的链接,id 分配顺序是 0-4

AT+CIPMUX=1

在这里插入图片描述

5.开启服务器模式,端口号 8080

AT+CIPSERVER=1,8080

在这里插入图片描述

6.设置服务器超时时间,超时时间1200s

AT+CIPSTO=1200

在这里插入图片描述

7.查看ESP8266 的 IP

AT+CIFSR

在这里插入图片描述

  1. 手机与esp建立连接和通信,手机下载一个网络调试助手,手机连接esp8266的热点,热点名:Lime,密码:12345678,输入查询到ip 192.168.4.1和设置好端口8080,连接成功后可发送消息到esp8266

在这里插入图片描述在这里插入图片描述

9.esp8266 使用AT发送数据
先输入 AT+CIPSEND=clientid,length
说明:先发送准备发送的命令,再发需要发送的数据

参数 client:是连接序号(0-4)

参数 data:发送的数据长度

比如发送12345
先输入指令

AT+CIPSEND=0,5

在输入

12345

在这里插入图片描述在这里插入图片描述

  1. 通信过程

arduino局域网通讯

版权声明:本文为CSDN博主「沸腾石灰」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_37738838/article/details/121523192

生成海报
点赞 0

沸腾石灰

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

Arduino设置esp8266实现局域网通信

硬件准备 Arduino UNO主板Esp8266 01s面包板杜邦线若干 软件准备 Arduino IDE网络调试助手(PS端或手机均可,手机可在应用市场搜索网络调试精灵) 接线 Arduin

ESP8266 无限重启踩坑

最近做了一个电子墨水屏万年历,在移植屏幕代码时遇到了esp8266无限软复位的问题,如果你的串口打印是以下图片所示,那么恭喜你问题解决了。 造成软复位的原因是因为,程序里有死循环&#xf

4路红外循迹模块使用教程

4路红外循迹模块使用教程 个人原创博客:点击浏览模块详细信息: 工作电压:DC 3.3V~5V 工作电流:尽量选择1A以上电源供电 工作温度:-10℃~50℃ 安装孔