【ESP8266】AT 指令大全

01. AT指令格式

db1c152a102664af936486cf4a6c6726.png

02. AT基础指令

2.1 AT测试指令

语法返回和说明

AT

OK

2.2 重启模块

语法返回和说明

AT+RST

OK
 ets Jan  8 2013,rst cause:2, boot mode:(3,7)
 
load 0x40100000, len 1856, room 16 
tail 0
chksum 0x63
load 0x3ffe8000, len 776, room 8 
tail 0
chksum 0x02
load 0x3ffe8310, len 552, room 8 
tail 0
chksum 0x79
csum 0x79
2nd boot version : 1.5
  SPI Speed      : 40MHz
  SPI Mode       : DOUT
  SPI Flash Size & Map: 32Mbit(512KB+512KB)
jump to run user1 @ 1000

ready

2.3 查看版本信息

语法返回和说明

AT+GMR

AT version:1.1.0.0(May 11 2016 18:09:56)
SDK version:1.5.4(baaeaebb)
compile time:Feb 24 2017 10:13:27
OK

2.4 开关回显

命令类型语法

返回和说明

开回显ATE1
OK
关回显ATE0
OK

2.5 恢复出厂设置

语法

返回和说明

AT+RESTORE

OK

 ets Jan  8 2013,rst cause:2, boot mode:(3,7)

load 0x40100000, len 1856, room 16 
tail 0
chksum 0x63
load 0x3ffe8000, len 776, room 8 
tail 0
chksum 0x02
load 0x3ffe8310, len 552, room 8 
tail 0
chksum 0x79
csum 0x79

2nd boot version : 1.5
  SPI Speed      : 40MHz
  SPI Mode       : DOUT
  SPI Flash Size & Map: 32Mbit(512KB+512KB)
jump to run user1 @ 1000


ready

2.6 串口设置

语法

返回和说明

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

OK

03. WIFI功能AT指令

3.1 AT+CWMODE指令

语法规则参数定义取值对取值的说明
AT+CWMODE = <mode><mode>WiFi应用模式1Station模式
2AP模式
3AP+Station模式
命令类型语法

返回和说明

测试指令AT+CWMODE=?
+CWMODE:(1-3)
OK
查询指令

AT+CWMODE?

+CWMODE:2
OK
设置指令

AT+CWMODE=2

OK

3.2 AT+CWJAP指令

语法规则参数定义取值对取值的说明
AT+CWJAP=<ssid>,<pwd><ssid>接入点名称
字符串型
<pwd>密码
字符串型,最长64字节,ASCII编码
命令类型语法

返回和说明

查询加入的APAT+CWJAP?
No AP

OK
连接到指定APAT+CWJAP="szitcast","1234567890"
WIFI CONNECTED
WIFI GOT IP

OK

3.3 AT+CWLAP指令

命令类型语法

返回和说明

列出当前可用APAT+CWLAP
+CWLAP:(4,"heima",-51,"8c:a6:df:b1:25:2f",6,13,0)

OK

语法规则参数定义取值对取值的说明
+CWLAP: <ecn>,<ssid>,<rssi>[,<mode>]<ecn>加密方式0OPEN
1WEP
2WPA_PSK
3WPA2_PSK
4WPA_WPA2_PSK
<ssid>接入点名称
字符串参数
<rssi>信号强度

<mode>连接模式0
手动连接
1自动连接

3.4 AT+CWQAP指令

命令类型语法

返回和说明

测试退出与AP的连接指令AT+CWQAP=?
OK
执行与AP退出指令

AT+CWQAP

OK
WIFI DISCONNECT

3.5 AT+CWSAP指令

语法规则参数定义取值对取值的说明
AT+CWSAP=<ssid>,<pwd>,<chl>, <ecn><ssid>接入点名称
字符串参数
<pwd>密码

<chl>通道号

<ecn>加密方式0OPEN
1WEP
2WPA_PSK
3WPA2_PSK
4WPA_WPA2_PSK
命令类型语法

返回和说明

查询当前AP参数AT+CWSAP?
+CWSAP:"ESP_1B4BCE","",1,0,4,0

OK
设置当前AP参数

AT+CWSAP="uplooking","123456789",6,4

OK

3.6 AT+CWLIF指令

命令类型语法

返回和说明

查询已经接入设备的IPAT+CWLIF
192.168.4.2,64:6e:69:e6:0f:51

OK

3.7 AT+ CWDHCP指令

命令类型语法

返回和说明

禁用DHCPAT+CWDHCP=0,0
OK
使能DHCPAT+CWDHCP=0,1
OK

3.8 AT+ CWAUTOCONN指令

命令类型语法

返回和说明

禁用开机自动连接AT+CWAUTOCONN=0
OK
使能开机自动连接AT+CWAUTOCONN=1
OK

3.9 AT+CIPSTAMAC指令

命令类型语法

返回和说明

查询STA模式的MAC地址AT+CIPSTAMAC?
+CIPSTAMAC:"ec:fa:bc:1b:4b:ce"

OK
设置STA模式的MAC地址AT+CIPSTAMAC="18:FE:35:98:D3:7B"
OK

3.10 AT+CIPAPMAC指令

命令类型语法

返回和说明

查询AP模式的MAC地址AT+CIPSTAMAC?
+CIPSTAMAC:"18:fe:35:98:d3:7b"

OK
设置AP模式的MAC地址AT+CIPAPMAC="18:FE:35:98:D3:7B"
OK

3.11 AT+CIPSTA指令

命令类型语法

返回和说明

查询STA模式的IPAT+CIPSTA?
+CIPSTA:ip:"0.0.0.0"
+CIPSTA:gateway:"0.0.0.0"
+CIPSTA:netmask:"0.0.0.0"

OK
设置STA模式的IPAT+CIPSTA="192.168.1.88"
OK

3.12 AT+CIPAP指令

命令类型语法

返回和说明

查询AP模型下IPAT+CIPAP?
+CIPAP:ip:"0.0.0.0"
+CIPAP:gateway:"0.0.0.0"
+CIPAP:netmask:"0.0.0.0"

OK
设置AP模式下IPAT+CIPAP="192.168.1.100"
OK

3.13 AT+CWSTARTSMART指令

命令类型语法

返回和说明

开启SmartConfigAT+CWSTARTSMART
OK
指定类型的SmartConfigAT+CWSTARTSMART=2
OK

3.14 AT+CWSTOPSMART指令

命令类型语法

返回和说明

停止SmartConfigAT+CWSTOPSMART
OK

3.15 AT+WPS指令

命令类型语法

返回和说明

开启WPSAT+WPS=1
wps started

OK
关闭WPSAT+WPS=0
wps stoped

OK

3.16 AT+MDSN指令

命令类型语法

返回和说明

开启MDSN功能AT+MDNS=1,"uplooking","iot",10086
OK
关闭MDSN功能AT+MDNS=0
OK

3.17 AT+CWHOSTNAME指令

命令类型语法

返回和说明

查询station默认主机名AT+CWHOSTNAME?

-

04. TCP/IP相关AT指令

4.1 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>

测试命令AT+CIPSTATUS=?
OK
参数定义取值对取值的说明
<sl_state>单连接状态IP INITIAL初始化
IP STATUS获得本地 IP 状态
TCP CONNECTING/UDP、CONNECTINGTCP 连接中/UDP 端口注册中
CONNECT OK连接建立成功
TCP CLOSING/UDP、CLOSING正在关闭 TCP 连接,正在注销 UDP 端口
<ml_state>多链接状态IP INITIAL初始化
IP STATUS获得本地 IP 状态
<sid>服务器id0~1取值为0和1
<server state>服务器状态OPENING正在打开
LISTENING正在监听
CLOSING正在关闭
<cid>客户端id0~4取值为0,1,2,3,4
<ip address>IP 地址-字符串参数(字符串需要加引号)
<port>服务器监听端口号-整数型
<client state>客户端状态CONNECTED已连接

CLOSED

已关闭

4.2 AT+CIPDOMAIN指令

命令类型语法

返回和说明

解析域名AT+CIPDOMAIN="www.baidu.com"
+CIPDOMAIN:14.215.177.38

OK

4.3 A T+CIPSSLSIZE指令

命令类型语法

返回和说明

设置SSL Buffer大小AT+CIPSSLSIZE=4096
OK

4.4 AT+CIPSEND指令

命令类型语法

返回和说明

设置命令单 路 连 接 (+CIPMUX=0)时:
AT+CIPSEND=<length>


多路连接(+CIPMUX=1)时:
AT+CIPSEND=<id>,<length>

响应

模块收到指令后先换行返回”>”,然后开始接收串口数据,当数据长度满length时发送数据

如果未建立连接或连接被断开,返回ERROR如果数据发送成功,返回SEND OK
说明发送指定长度的数据
测试指令AT+CIPSEND=?响应单路连接(AT+CIPMUX=0)返回:
+CIPSEND: <length>

OK
多路连接(AT+CIPMUX=1)返回:
+CIPSEND: <0-7>,<length>

OK
执行命令AT+CIPSEND说明AT+CIPMODE=1并且作为客户端模式下,进入透传模式(需要支持硬件流控,否则大量数据情况下会丢数据)

模块收到指令后先换行返回”>”,然后会发送串口接收到的数据。
语法规则参数定义取值对取值的说明
AT+CIPSEND=<id>,<length><id>Link No.0~4连接序号
<length>数据长度
单位:字节

4.5 AT+CIPCLOSE指令

命令类型语法

返回和说明

设置命令单路连接时

AT+CIPCLOSE=<id>

返回:
CLOSE OK

多路连接时

AT+CIPCLOSE=<n>[,<id>]
返回:
<n>,CLOSE OK
执行命令AT+CIPCLOSE如果关闭成功,返回:
CLOSE OK

如果关闭失败,返回:
ERROR
测试命令AT+CIPCLOSE?返回:
OK
注意事项
l 执行命令只对单链接有效,多链接模式下返回ERROR
l 执行命令AT+CIPCLOSE 只有在TCP/UDP CONNECTING或CONNECT OK状态下才会关闭连接,否则会认为关闭失败返回ERROR
l 单路连接模式下,关闭后的状态为IP CLOSE

语法规则参数定义取值对取值的说明
AT+CIPCLOSE=<n>[,<id>]<id>关闭模式0慢关(缺省值)
1快关
<n>Link No.0~7整数型,表示连接序号

4.6 AT+CIFSR指令

命令类型语法

返回和说明

获取本地信息AT+CIFSR
+CIFSR:STAIP,"192.168.1.88"
+CIFSR:STAMAC,"18:fe:35:98:d3:7b"

OK

语法规则参数定义取值对取值的说明
+CIFSR:<IP address><IP address>本机目前的IP地址(station)

4.7 AT+CIPMUX指令

语法规则参数定义取值对取值的说明
AT+CIPMUX=<mode><mode>是否处在多连接模式0单连接模式
1多连接模式
命令类型语法

返回和说明

查询指令AT+CIPMUX?
+CIPMUX:0

OK
设置多路连接AT+CIPMUX=1
OK

4.8 AT+CIPSERVER指令

命令类型语法

返回和说明

配置为服务器AT+CIPSERVER=1,10086
OK

4.9 AT+CIPMODE指令

命令类型语法

返回和说明

查询传输模式AT+CIPMODE?
+CIPMODE:0

OK
设置透传模式AT+CIPMODE=1
OK

语法规则参数定义取值对取值的说明
AT+CIPMODE=<mode><mode>TCPIP应用模式0非透明传输模式,缺省模式
1透明传输模式

4.10 AT+CIPSTO指令

命令类型语法

返回和说明

设置服务器超时时间AT+CIPSTO=3
OK
查询服务器超时时间AT+CIPSTO?
+ CIPSTO:<server timeout>

OK

语法规则参数定义取值对取值的说明
AT+CIPSTO=<server timeout><server timeout>用来设置服务器主动断开连接的超时时间0~28800(s)用本命令设置好超时时间后,服务器到时间就断开连接。

4.11 AT+CIPSNTPTIME指令

命令类型语法

返回和说明

查询SNTP时间AT+CIPSNTPTIME?


4.12 AT+PING 指令

命令类型语法

返回和说明

检查网络连通性AT+PING="www.baidu.com"
+10

OK

4.13 AT+CIPSTART 指令

命令类型语法

返回和说明

检查网络连通性

单 路 连 接 (+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)

参数定义取值对取值的说明
<id>Link No.0~4表示连接序号,0号连接可client或server连接,其他id只能用于连接远程server
<type>连接类型"TCP" / "UDP"
<addr>远程服务器IP地址
字符串型
<port>远程服务器端口号

4.14 AT+CIOBAUD 指令

命令类型语法

返回和说明

设置波特率AT+CIOBAUD=9600
OK
语法规则参数定义取值对取值的说明
AT+CIOBAUD=<rate><rate>

波特率,单位bps

0
自适应波特率
110
300
1200
2400
4800
9600
14400
19200
28800
38400
57600
115200
230400
460800
921600


相关链接:

https://blog.51cto.com/dlican/3739310

https://www.cnblogs.com/lifan3a/articles/7070028.html