一.引脚连接部分:
![]() | TXD----RXD | GND |
CHPD--3.3V | GPIO2 | |
RST | GPIO0 | |
VCC:3.3V | RXD----TXD(最好转换3.3V电压,以延长寿命) |
关于ESP8266系列模块,不能直接接受5V电压信号的处理办法--电平转换电路:
二.工作模式
ESP8266模块支持STA/AP/STA+AP 三种工作模式。
- STA 模式:ESP8266模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的远程控制。
- AP 模式:ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。
- STA+AP 模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。
ESP8266模块可以工作在多种模式下实现不同的功能。【此部分引:https://blog.csdn.net/xiaohupashu/article/details/53575097】
(1)SoftAP模式(软路由模式)
在此模式下,模块本身相当于一个路由器,其他设备可链接到该模块发送的信号,主要应用在主从设备的主机部分。
(2)station模式(客户端模式)
在此模式下,模块相当于一个客户端,可以链接到其他路由器发出的WIFI信号。主要应用在网络通信中。
(3)SoftAP+station共存模式(混合模式)
在此模式下,模块可在与其他设备链接的同时充当路由器,结合上面两种模式的综合应用,一般可应用在需要网络通信且在主从关系中的主机。
三.关于AT指令调试
软件选择:SSCOM。 原因:此软件可以列出多个AT指令便于测试。
串口调试助手,软件波特率项设置为115200,端口端设置115200。 【必】
设置成功后,打开串口。先发送“AT”指令,看是否有“OK”返回。返回则成功进入指令模式。
*********************************基础配置 AT指令**********************************
1,选择WiFi应用模式
对于WiFi的AT指令的划分:基础命令、功能命令、TCP/IP工具箱命令等。
指令的发送调试:
AT+CWMODE 可以查询模块的工作模式。
AT+CWMODE=1 -- SAT模式
AT+CWMODE=2 -- AT模式
AT+CWMODE=3 -- SAT+AT模式
2,列出当前可用接入点:AT+CWLAP 列出周围的无限网络名称及信号强度等
命令类型 | 语法 | 返回和说明 |
执行命令 | AT+CWLAP | +CWLAP: <ECN>,<SSID>,<RSSI>,<MAC> OK |
此指令返回AP列表 |
3,加入接入点:AT+CWJAP="无线名称","无线密码"
4,退出接入点:AT+CWQAP
命令类型 | 语法 | 返回和说明 |
执行命令 | AT+CWQAP | OK |
表示成功退出该AP |
5,若要设置为AP模式,则:AT+CWSAP
命令类型 | 语法 | 返回和说明 |
设置命令 | AT+CWSAP=<ssid>,<pwd>,<chl>, <ecn> 名称,密码,频段,加密模式 其中<ecn>:0--OPEN,1--WEP,2--WPA_PSK,3--WPA2_PSK,4--WPA_WPA2_PSK | OK |
设置参数成功 | ||
查询命令 | AT+CWSAP | OK |
查询当前AP参数 |
*********************************TCP/IP AT指令**********************************
1,建立TCP/UDP连接
设置命令 | 单路连接(+CIPMUX=0)时: AT+CIPSTART=<type>,<addr>,<port>
多路连接(+CIPMUX=1)时: AT+CIPSTART=<id>,<type>,<addr>,<port> | 如果格式正确,返回: OK 否则返回: +CME ERROR: invalid input value
连接成功,返回: CONNECT OK (CPIMUX=0) <id>, CONNECT OK (CIPMUX=1) 如果连接已经存在,返回: ALREADY CONNECT 连接失败返回: CONNECT FAIL (CIPMUX=0) <id>, CONNECT FAIL (CIPMUX=1) |
2,获得TCP/UDP连接状态:AT+CIPSTATUS
命令类型 | 语法 | 返回和说明 |
执行命令 | AT+CIPSTATUS | 如果是单路连接(AT+CIPMUX=0),返回:OK STATE: <sl_state> |
如果是多路连接 (AT+CIPMUX=1),返回:OK STATE:<ml_state> | ||
如果配置为服务器: STATE:IP STATUS S: <sid>,<port>,<server state> C:<cid>, <TCP/UDP>, <IP address>, <port>, <client state> |
参数 | 定义 | 取值 | 对取值的说明 |
<sl_state> |
单连接状态
| IP INITIAL | 初始化 |
IP STATUS | 获得本地 IP 状态 | ||
TCP CONNECTING/UDP CONNECTING | TCP 连接中/UDP 端口注册中 | ||
CONNECT OK | 连接建立成功 | ||
TCP CLOSING/UDP CLOSING | 正在关闭 TCP 连接,正在注销 UDP 端口 | ||
<ml_state> | 多链接状态 | IP INITIAL | 初始化 |
IP STATUS | 获得本地 IP 状态 | ||
<sid> | 服务器id | 0~1 | 取值为0和1 |
<server state> | 服务器状态 | OPENING | 正在打开 |
LISTENING | 正在监听 | ||
CLOSING | 正在关闭 | ||
<cid> | 客户端id | 0~4 | 取值为0,1,2,3,4 |
<IP address> | IP 地址 | - | 字符串参数(字符串需要加引号) |
<port> | 服务器监听端口号 | - | 整数型 |
<client state> | 客户端状态 | CONNECTED | 已连接 |
CLOSED | 已关闭 |
3,启动多连接:AT+CIPMUX
命令类型 | 语法 | 返回和说明 |
设置命令 | AT+CIPMUX=<mode>
0:单连接模式 1:多连接模式 | OK
如果已经处于多连接模式,则返回 Link is builded |
启动多连接成功 |
4,发送数据:AT+CIPSEND
命令类型 | 语法 | 返回和说明 | |
设置命令 | 单路连接(+CIPMUX=0)时: AT+CIPSEND=<length>
多路连接(+CIPMUX=1)时: AT+CIPSEND=<id>,<length>
其中:<length>数据长度?字节 <id>link No. 0-4,连接序号 | 响应 | 模块收到指令后先换行返回”>”,然后开始接收串口数据,当数据长度满length时发送数据
如果未建立连接或连接被断开,返回ERROR如果数据发送成功,返回SEND OK |
说明 | 发送指定长度的数据 | ||
执行命令 | AT+CIPSEND | 说明 | AT+CIPMODE=1并且作为客户端模式下,进入透传模式(需要支持硬件流控,否则大量数据情况下会丢数据)
模块收到指令后先换行返回”>”,然后会发送串口接收到的数据。 |
5,关闭TCP/UDP连接:AT+CIPCLOSE
命令类型 | 语法 | 返回和说明 |
设置命令 | 单路连接时
AT+CIPCLOSE=<id> | 返回: CLOSE OK |
多路连接时
AT+CIPCLOSE=<n>[,<id>] | 返回: <n>,CLOSE OK | |
执行命令 | AT+CIPCLOSE |
如果关闭成功,返回: CLOSE OK
如果关闭失败,返回: ERROR |
注意事项 |
|
参数 | 定义 | 取值 | 对取值的说明 |
<id> | 关闭模式 | 0 | 慢关(缺省值) |
1 | 快关 | ||
<n> | Link No. | 0~7 | 整数型,表示连接序号 |
6,查询IP地址:AT+CIFSR
命令类型 | 语法 | 响应和说明 | |
执行命令 | AT+CIFSR | 响应 | + CIFSR:<IP address> OK 或者 ERROR |
参数 | 定义 | 取值 | 对取值的说明 |
<IP address> | 本机目前的IP地址(station) |
|
|
------未完待续,接下------
【通信2】Wi-Fi模块(ESP8266-01/ESP-01)入网,成功往IOT平台POST数据