一、ESP8266系列模块是什么?
ESP8266系列无线模块是一个经济高效的WIFI SOC模块,支持标准IEEE802.11b/g/n协议,内置完整的TCP/IP协议栈。 用户可以使用此系列模块向现有设备添加网络功能,也可以构建独立的网络控制器。
二、ESP8266系列模块有什么特点?
- 支持STA、AP、STA+AP动作模式
- 体积非常小的802.11b/g/n WiFi SOC模块
- 内置10bit高精度ADC
- 采用低功率32位CPU,兼作应用程序处理器
- 支持USART、GPIO、IIC、PWM、ADC、SPI等接口
- 时钟频率最大为160MHz
- 支持smart config、AirKiss一键网络
- 支持多个休眠模式,深休眠电流低到20uA
- 嵌入式LWIP协议栈
- 支持SDK二次开发
- 通用AT指令可以快速使用
- 支持串行本地升级和远程固件升级( FOTA )
三、ESP8266 WiFi模块的网络连接方法
如果手机连接WiFi,那非常简单,先打开WIFI开关,选择WIFI网络,然后输入密码即可。但出于成本等各方面因素考虑,往往物联网设备都没有像手机那样好的交互界面。其次,如果设备数量很大,则不能为每个设备单独输入帐户和密码。
此外,将WIFI模块应用于各种场合时,有各种WIFI网络帐户名和密码,密码也会不断更新,帐户和密码无法固定。
针对这些需求,ESP8266支持smartconfig模式,用户将采用ESP8266EX和ESP32的设备连接到WiFi网络,用户只需用手机简单操作就能实现智能的结构。 这个过程如下图所示。
![381ba13a6de574406a2ced10cd16284e.png](https://i-blog.csdnimg.cn/blog_migrate/fb7484558cfe8b17e57f3c118528ac99.jpeg)
由于设备最初没有连接到网络,因此手机端App无法直接向设备发送信息。 通过smartconfig通信协议,具有WiFi网络访问能力的设备(例如智能手机)可以向接入点( AP )发送一系列UDP分组,每个分组的长度(即Length字段) 数据包结构如下图所示。
![3eb5a8ead63a2b33bbc1684ba6ee6e52.png](https://i-blog.csdnimg.cn/blog_migrate/e35772a1db34284a760dd9e44fc42ca6.jpeg)
四、ESP8266 WiFi模块的AT指令
ESP826支持AT指令,使用单独的MCU控制ESP8266非常方便。
TCP/IP指令一览表
指令
实际响应
Actual Response
AT+CIPSTATUS
查询网络连接信息
AT+CIPDOMAIN
域名解析功能
AT+CIPDNS
自定义DNS服务器
AT+CIPSTAMAC
设置ESP32 Station的MAC地址
AT+CIPAPMAC
设置ESP32 SoftAP的MAC地址
AT+CIPSTA
设置ESP32 Station的IP地址
AT+CIPAP
设置ESP32 SoftAP的IP地址
AT+CIPSTART
建立TCP连接,UDP传输或者SSL连接
AT+CIPSEND
发送数据
AT+CIPSENDEX
发送数据,达到设置长度,或者遇到字符0,则发送数据
AT+CIPCLOSE
关闭TCP/UDP/SSL传输
AT+CIFSR
查询本地IP地址
AT+CIPMUX
设置多连接模式
AT+CIPSERVER
设置TCP服务器
AT+CIPSERVERMAXCONN
设置TCP服务器允许的最大连接数
AT+CIPMODE
设置透传模式
AT+SAVETRANSLINK
保存透传连接到Flash
AT+CIPSTO
设置ESP32作为TCP服务器的超时时间
AT+CIUPDATE
通过Wi-Fi升级软件
AT+CIPSNTPCFG
设置时域和SNTP服务器
AT+PING
Ping功能