# 指令详细


本文将详细描述每个AT指令的语法格式,功能及使用。若无特别说明,某指令仅适用于Wi-Fi模式。

所有指令均为立即生效,无需特殊指令进行保存,AT指令可以通过超级终端等串口调试程序进行输入,也可以通过编程输入。

#AT指令格式

AT+指令采用基于ASCII码的命令行,格式如下:

#说明

  • a)<>:表示必须包含的部分
  • b)[]:表示可选的部分

#命令格式

AT+<CMD>[op][para-1,para-2,para-3,......]\r

a) AT+:命令消息前缀

b) CMD:指令字符串

c) [op]:指令操作符。可以是:

  • "=": 表示参数设置,或查询指定参数
  • "?": 表示查询系统参数
  • "无": 表示执行指令
  • "=?": 表示查询用户设置的参数

d) [para-n]:表示设置的参数值,或指定查询的参数

e) \r:回车结束符,ASCII码0x0d

#回应消息格式

[\r\n][+CMD:][para-1,para-2,para-3,......]\r\n<STATUS>\r\n

a)\r::回车结束符,ASCII码:0x0d

b)\n:换行符,ASCII码:0x0a

c)[+CMD:]:相应的命令字符串

d)[para-n]:查询时返回的参数

e)[STATUS]:指令执行成功与否,有两种情况:

  • OK:表示正确执行;
  • ERROR:表示执行出错。

#EVENT格式

EVENT描述当前Wi-Fi/BT功能和网络连接状态,例如:STA、AP连接状态,TCP、UDP连接情况,RFCOMM的连接情况等。

事件消息格式:

\r\n+<TYPE>:[para-1,para-2,para-2,...,para-n]\r\n

  • <TYPE>:事件类型,包括:WEVENT,表示WiFi功能通知;CIPEVENT,表示网络连接通知,BTEVENT表示BT/RFCOMM的连接通知(仅EMW3239支持)。
  • [para-n]:事件参数,详见“EVENT事件通知”小节
  • \r:回车符,ASCII码0x0d
  • \n:换行符,ASCII码0x0a

#基础版AT指令

具体指令及返回的消息格式,请参考上节中“AT指令格式”。

以下指令介绍中,不再添加重复的格式内容,如:\r\n

#一、系统AT指令

序号

命令

功能

1

(opens new window)AT+FWVER

查询固件版本号

2

(opens new window)AT+SYSTIME

查询系统运行时间

3

(opens new window)AT+MEMFREE

查询系统剩余存储空间大小

4

(opens new window)AT+FACTORY

恢复模组出厂设置

5

(opens new window)AT+REBOOT

重启模组

6

(opens new window)AT+FLASHLOCK

关闭或打开Flash锁

7

(opens new window)AT+WEVENT

打开或关闭事件消息通知(通知前缀:+WEVENT)

8

(opens new window)AT+CIPEVENT

打开或关闭事件消息通知(前缀:+CIPEVENT)

9

(opens new window)AT+STANDBY

进入睡眠模式

#AT+FWVER

功能:查询固件版本号。

指令:

AT+FWVER?

HEX:

41 54 2B 46 57 56 45 52 3F 0D

响应:

+FWVER:<fwver>

参数:

fwver:固件版本号

#AT+SYSTIME

功能:查询系统运行时间。

指令:

AT+SYSTIME?

HEX:

41 54 2B 53 59 53 54 49 4D 45 0D

响应:

+SYSTIME:<systime>

OK

参数:

systime:系统运行时间,单位:毫秒(ms)

#AT+MEMFREE

功能:查询系统剩余空间大小。

指令:

AT+MEMFREE?

HEX:

41 54 2B 4D 45 4D 46 52 45 45 3F 0D

响应:

+MEMFREE:<storage>

OK

参数:

storage:存储空间大小,单位:字节(Byte)

#AT+FACTORY

功能:恢复模块出厂设置。

指令:

AT+FACTORY

HEX:

41 54 2B 46 41 43 54 4F 52 59 0D

响应:

OK

参数:

说明:

立即重启,生效

#AT+REBOOT

功能:重启模块。

指令:

AT+REBOOT

HEX:

41 54 2B 52 45 42 4F 4F 54 0D

响应:

OK

参数:

#AT+FLASHLOCK

功能:FLASH锁指令

查询指令:

AT+FLASHLOCK?

HEX:

41 54 2B 46 4C 41 53 48 4C 4F 43 4B 3F 0D

响应:

+FLASHLOCK:<mode>

OK

参数:

请参考设置指令参数

设置指令:

AT+FLASHLOCK=<mode>

响应:

OK

参数:

mode:ON:开启;OFF:关闭;开启FLASHLOCK后,参数将不再保存

#AT+WEVENT

功能:开启或关闭以+WEVENT为前缀的事件消息通知。

查询指令:

AT+WEVENT?

HEX:

41 54 2B 57 45 56 45 4E 54 3F 0D

响应:

+WEVENT=<state>

OK

参数:

请参考设置指令参数

设置指令:

AT+WEVENT=<state>

响应:

OK

参数:

state:ON,表示开启通知功能;OFF,表示关闭通知功能。

说明:

立即生效。

#AT+CIPEVENT

功能:开启或关闭以+CIPEVENT为前缀的事件消息通知。

查询指令:

AT+CIPEVENT?

HEX:

41 54 2B 43 49 50 45 56 45 4E 54 3F 0D 

响应:

+CIPEVENT=<state>

OK

参数:

请参考设置指令参数

设置指令:

AT+CIPEVENT=<state>

响应:

OK

参数:

state:ON,表示开启CIPEVENT通知功能;OFF,表示关闭CIPEVENT通知功能。

说明:

立即生效。注意:用户若采用“透传工作模式,必须首先关闭该事件通知功能。

#AT+STANDBY

功能:进入模块休眠工作模式,需STANDBY管脚唤醒,可参考相应型号模块的数据手册管脚定义内容。

查询指令:

AT+STANDBY

HEX:

41 54 2B 53 54 41 4E 44 42 59 0D

响应:

OK

参数:

说明:

立即生效。必须使用STANDBY管脚进行唤醒后,才能响应AT指令。

#AT+HOSTNAME

功能:设置模块在路由器下显示的名字,最长32字节,A270版本增加。

查询指令:

AT+HOSTNAME=?

HEX:

41 54 2B 48 4F 53 54 4E 41 4D 45 3D 3F 0D 

响应:

+HOSTNAME:<hostname>

OK

参数:

请参考设置指令参数

设置指令:

AT+HOSTNAME=<hostname>

响应:

OK

参数:

hostname是不超过32字节的字符串,用于在路由器后台显示的名称。

说明:

连接WiFi前配置生效。

#AT+WIFILED

功能:配置WiFi连接状态的LED指示灯的IO。

查询指令:

AT+WIFILED=?

响应:

+WIFILED:OFF 或者+WIFILED:<数字>

OK

参数:

请参考设置指令参数

设置指令:

AT+WIFILED=<IO>

响应:

OK

参数:

IO是一个数字,如果IO小于0就表示关闭WiFi LED功能,WiFi状态不会通过IO指示。

如果是大于0的一个数字,则打开WiFi LED功能。比如对于emc3080来说这里配置为AT+WIFILED=12,表示PA_12脚用于指示WiFi连接状态。

当Station连接成功,则PA_12输出高电平;当Station断开,则PA_12输出低电平。

说明:

WiFi连接状态的指示。

#AT+TCPIPLED

功能:配置TCPIP连接状态的LED指示灯的IO。

查询指令:

AT+TCPIPLED=?

响应:

+TCPIPLED:OFF 或者+TCPIPLED:<数字>

OK

参数:

请参考设置指令参数

设置指令:

AT+TCPIPLED=<IO>

响应:

OK

参数:

IO是一个数字,如果IO小于0就表示关闭TCPIP LED功能,TCPIP状态不会通过IO指示。

如果是大于0的一个数字,则打开TCPIP LED功能。比如对于emc3080来说这里配置为AT+TCPIPLED=13,表示PA_13脚用于指示TCPIP的连接状态。

TCPIP一共可以创建5条连接,这里用于指示配置为TCP_CLIENT,SSL_CLIENT和TCP_SERVER的状态,不关心UDP的状态。只要5条连接有任意一条连接建立成功,就输出高电平;如果所有的连接都没有建立连接,则输出低电平。TCP_SERVER至少有一个Client则视为有建立连接。

说明:

TCPIP连接状态的指示。

#二、UART管理指令

序号

命令

描述

1

(opens new window)AT+UART

查询/设置UART串口参数

2

(opens new window)AT+UARTFOMAT

查询/设置UART自动触发长度和触发时间

3

(opens new window)AT+UARTE

查询/设置UART串口回显状态

#AT+UART

功能:查询/设置串口参数。

查询指令:

AT+UART?

HEX:

41 54 2B 55 41 52 54 3F 0D

响应:

+UART:<baud_rate>,<data_bits>,<stop_bit>,<parity>,<flow_control>]

OK

参数:

请参考设置指令参数

设置指令:

AT+UART=<baud_rate>,<data_bits>,<stop_bit>,<parity>,<flow_control>

响应:

OK

参数:

band_rate:波特率,可以是:4800,9600,14400,19200,38400,57600,115200,230400,460800,921600bps

data_bits:数据位,可以是:7,8

stop_bit:停止位,可以是:1,2

parity:校验位,可以是:NONE:无校验;ODD:奇校验; EVEN:偶校验

flow_control:流控,可以是:NONE:无流控; CTS:使能CTS流控; RCS:使能RTS流控; CTSRTS:使能CTSRTS流控

说明:

重启生效

#AT+UARTFOMAT

功能:查询/设置自动成帧触发长度和触发时间(Wi-Fi/BT均支持)

查询指令:

AT+UARTFOMAT?

HEX:

41 54 2B 55 41 52 54 46 4F 4D 41 54 3F 0D

响应:

+UARTFOMAT:<length>,<time>

OK

参数:

请参考设置指令参数

设置指令:

AT+UARTFOMAT=<length>,<time>

响应:

OK

参数:

length:自动成帧触发长度,单位:Byte, 范围:1-1024,默认:1024。

time:自动成帧触发时间,单位:ms, 范围:50-500,默认:100。

说明:

在命令控制模式下,自动成帧触发长度的最小值是65,立即生效。

#AT+UARTE

功能:查询/设置串口指令是否开启回显功能。

查询指令:

AT+UARTE?

HEX:

41 54 2B 55 41 52 54 45 3F 0D

响应:

UARTE:<option>

OK

参数:

请参考设置指令参数

设置指令:

AT+UARTE=<option>

响应:

OK

参数:

option:ON,表示开启回显功能;OFF,表示关闭回显功能。

说明:

立即生效。

#三、WiFi管理指令

序号

命令

描述

1

(opens new window)AT+WFVER

查询射频固件版本号

2

(opens new window)AT+WMAC

查询MAC地址

3

(opens new window)AT+WSCANOPT

查询/设置WiFi扫描类型

4

(opens new window)AT+WSCAN

启动WiFi扫描功能

5

(opens new window)AT+WDHCP

查询/设置是否使能DHCP功能

6

(opens new window)AT+WSAPIP

查询/设置Soft_AP模式的IP地址,子网掩码和网关

7

(opens new window)AT+WSAP

查询/设置Soft_AP模式的名称和密码,并启动AP

8

(opens new window)AT+WSAPQ

关闭AP

9

(opens new window)AT+WSAPS

查询当前AP状态

10

(opens new window)AT+WJAPIP

查询/设置Station模式的IP地址,子网掩码和网关

11

(opens new window)AT+WJAP

查询/设置Station模式AP名称和密码,并连接AP

12

(opens new window)AT+WJAPQ

断开AP的连接

13

(opens new window)AT+WJAPS

查询当前Station连接状态

#AT+WFVER

功能:查询射频驱动版本

指令:

AT+WFVER?

HEX:

41 54 2B 57 46 56 45 52 3F 0D

响应:

+WFVER:<fver>

OK

参数:

fver:射频固件版本

说明:

立即生效。

#AT+WMAC

功能:查询模块MAC地址

指令:

AT+WMAC?

HEX:

41 54 2B 57 4D 41 43 3F 0D

响应:

+WMAC:<mac>

OK

参数:

mac:模块的MAC地址

说明:

MAC地址格式:XX:XX:XX:XX:XX:XX。立即生效。

#AT+WSCANOPT

功能:查询/设置WiFi扫描类型

查询指令:

AT+WSCANOPT?\r

HEX:

41 54 2B 57 53 43 41 4E 4F 50 54 3F 0D

响应:

+WSCANOPT:<option>

OK

参数:

请参考设置指令参数说明。

设置指令:

AT+WSCANOPT=<option>

响应:

OK

参数:

option:0,表示normal,普通扫描;1,表示advanced,高级扫描。

说明:

普通扫描结果仅包含ssid和信号强度,高级扫描结果包含ssid,bssid,加密方式,信道和信号强度。立即生效。

#AT+WSCAN

功能:扫描指定ssid的或所有的AP

扫描指定ssid的AP

AT+WSCAN=<ssid>

HEX:

41 54 2B 57 53 43 41 4E 3D <指定SSID的HEX>0D

响应:

若扫描类型为普通扫描,即:option=0,返回:+WSCAN:<number>\r\n<ssid>,<rssi>

若扫描类型为高级扫描,即:option=1,返回:+WSCAN:<number>\r\n<ssid>,<bssid>,<en>,<channe>,<rssi>

参数:

请参考扫描所有AP指令参数。

扫描所有AP:

AT+WSCAN

响应:

+WSCAN:<number>

<ssid>,[bssid],[en],[channe],<rssi>

参数:

number:扫描到的AP的数目。普通扫描和高级扫描均打印该参数。

ssid:扫描到的AP的ssid。普通扫描和高级扫描均打印该参数

bssid:扫描到的AP的bssid。当高级扫描时,打印该参数。

en:扫描到的AP的加密方式。当高级扫描时,打印该参数。

channel:扫描到的AP的信道。当高级扫描时,打印该参数。

rssi:扫描到的AP的信号强度

说明

立即生效。

#AT+WDHCP

功能:查询/设置是否开启DHCP功能

查询指令:

AT+WDHCP?

HEX:

41 54 2B 57 44 48 43 50 3F 0D

响应:

+WDHCP:<option>

参数:

请参考设置指令参数

设置指令:

AT+WDHCP=<option>

响应:

OK

参数:

option:ON,表示启动DHCP功能;OFF,表示关闭DHCP功能

说明:

立即生效

#AT+WSAPIP

功能:查询/设置模块在Soft_AP模式时的IP地址

查询状态只有在SoftAP有启动才会返回。

查询状态:

AT+WSAPIP?

HEX:

41 54 2B 57 53 50 49 50 3F 0D

响应:

+WSAPIP:<ip>,<netmask>,<gateway>

参数:

请参考设置指令参数

查询配置是直接返回配置的IP地址。

查询配置:

AT+WSAPIP=?

HEX:

41 54 2B 57 53 50 49 50 3D 3F 0D

响应:

+WSAPIP:<ip>,<netmask>

参数:

请参考设置指令参数

设置指令:

AT+WSAPIP=<ip>[,<netmask>,<gateway>]

响应:

OK

参数:

ip:Soft_AP的IP地址

netmask:子网掩码

gateway:网关地址

说明:

立即生效。模块出厂各参数默认为0。

#AT+WSAP

功能:查询/设置Soft_AP的名称及密码,并启动。

查询指令:

AT+WSAP=?

HEX:

41 54 2B 57 53 41 50 3F 0D

响应:

+WSAP:<ssid>,<key>

参数:

请参考设置指令参数

设置指令:

AT+WSAP=<ssid>,<key>

响应:

OK

参数:

ssid:Soft_AP的ssid名称,最大32位。

key:Soft_AP的密码,最大64位。当长度小于8位时,加密方式:OPEN。大于8位时,加密方式:WPA。

说明:

立即生效。模块出厂参数默认均为0。

#AT+WSAPQ

功能:关闭当前的Soft_AP模式。

指令:

AT+WSAPQ

HEX:

41 54 2B 57 53 41 50 51

响应:

OK

参数:

说明:

立即生效。

#AT+WSAPS

功能:查看当前Soft_AP的启动状态。

指令:

AT+WSAPS

HEX:

41 54 2B 57 53 41 50 53

响应:

+WSAPS:<state>

参数:

state:AP_UP,表示成功创建Soft_AP;AP_DOWN,表示该Soft_AP已关闭。

说明:

立即生效。

#AT+WJAPIP

功能:查询/设置模块在Station模式时的IP地址。

查询状态指令只有在WiFi连接成功且Station有IP地址才会返回。

查询状态:

AT+WJAPIP?

HEX:

41 54 2B 57 4A 41 50 49 50 3F 0D

响应:

+WJAPIP:<ip>,<network>,<gateway>,<dns>

参数:

请参考设置指令参数

查询配置指令是直接返回配置的IP地址,不一定是当前Station的IP地址。

查询配置:

AT+WJAPIP=?

HEX:

41 54 2B 57 4A 41 50 49 50 3D 3F 0D

响应:

+WJAPIP:<ip>,<network>,<gateway>,<dns>

参数:

请参考设置指令参数

设置指令:

AT+WJAPIP=<ip>,<network>,<gateway>[,<dns>]

响应:

OK

参数:

ip:模块做Station时的IP地址

network:子网掩码

gateway:网关地址

dns:域名

说明:

模块重启生效。当模块未成功连接AP时,各参数默认为0。

#AT+WJAP

功能:查询已设置的,在Station模式,要接入的AP的名称和密码。

查询指令:

AT+WJAP=?

HEX:

41 54 2B 57 4A 41 50 3D 3F 0D

响应:

+WJAP:<ssid>,<key>

参数:

ssid:Station模式要接入的AP名称

key:Station模式要接入的AP密码

功能:查询当前WiFi连接状态,包括:接入的AP的SSID,MAC地址,通道号,信号强度。

查询指令:

AT+WJAP?

HEX:

41 54 2B 57 4A 41 50 3F 0D

响应:

+WJAP:<ssid>,<bssid>,<channel>,<rssi>

参数:

ssid:已连接的AP的ssid

bssid:已连接的AP的MAC地址

channel:已连接的AP的信道号

rssi:已连接的AP的信号强度

说明

当模块未成功连接AP时,各参数默认为0。

功能:设置Station模式要接入的AP的名称和密码。

设置指令:

AT+WJAP=<ssid>,<key>

响应:

OK

参数:

ssid:Station模式要接入的AP名称

key:Station模式要接入的AP密码

说明:

立即生效。

#AT+WJAPQ

功能:关闭当前的Station模式

指令:

AT+WJAPQ

HEX:

41 54 2B 57 4A 41 50 51

响应:

OK

参数:

说明:

立即生效。

#AT+WJAPS

功能:查看当前Station模式的连接状态

指令:

AT+WJAPS

HEX:

41 54 2B 57 4A 41 50 53 0D

响应:

+WJAPS:<state>

参数:

state:STATION_UP,表示成功连接AP;STATION_DOWN,表示连接AP失败;CONNECTING,表示正在连接中。

注意:当未连接成功时,返回错误码。0:代表正常;1:代表密码错误;2:代表找不到SSID;3:代表未知的错误;-30代表当前连接WiFi信号的SSID未找到

说明:

立即生效。

#四、TCP和UDP通信指令

序号

指令

功能

1

(opens new window)AT+SSLCERTGET

获取SSL证书

2

(opens new window)AT+SSLCERTSET

设置SSL证书

3

(opens new window)AT+CIPDOMAIN

域名解析

4

(opens new window)AT+CIPAUTOCONN

查询/设置指定id连接是否为自动连接

5

(opens new window)AT+CIPSSLOPT

设置指定id连接的ssl参数

6

(opens new window)AT+CIPSTART

启动一个指定id的连接

7

(opens new window)AT+CIPSTOP

断开一个指定id的连接

8

(opens new window)AT+CIPSTATUS

查询指定id的连接状态

9

(opens new window)AT+CIPSEND

通过串口向指定id的连接发送数据

10

(opens new window)AT+CIPSENDRAW

指令模式跳转至透传模式

11

(opens new window)AT+CIPRECV

接收WiFi数据至用户串口

12

(opens new window)AT+CIPRECVCFG

查询/设置WiFi数据发送至用户串口,通过指令模式,还是透传模式

#AT+SSLCERTGET

功能:获取SSL证书类型。

指令:

AT+SSLCERTGET=<type>

响应:

+SSLCERTGET:cert

OK

参数:

type:0,代表根证书;1,代表客户端证书;2,代表私钥;3,代表证书吊销列表

说明:

立即生效。

#AT+SSLCERTSET

功能:设置SSL证书类型。

指令:

AT+SSLCERTSET=<type>

响应:

>

参数:

type:0,代表根证书;1,代表客户端证书;2,代表私钥;3,代表证书吊销列表

说明:

立即生效。返回>后,传递证书文件,在证书末尾追加Ctrl+Z(ASCII码是0x1A,不属于证书的一部分),作为证书传递结束符。

#AT+CIPDOMAIN

功能:域名解析。

指令:

AT+CIPDOMAIN=<domain>

响应:

+CIPDOMAIN:<number>

<ip>

参数:

number:IP地址的个数

ip:IP地址

说明:

立即生效。

#AT+CIPAUTOCONN

功能:查询/设置指定id连接是否为自动连接。

查询指令:

AT+CIPAUTOCONN=<id>

响应:

+CIPAUTOCONN:<option>

OK

参数:

请参考设置指令参数

设置指令:

AT+CIPAUTOCONN=<id>,<option>

响应:

OK

参数:

id:指定连接的id号

option:0,表示关闭自动连接;1,表示开启自动连接。

说明:

立即生效。出厂默认为1。

#AT+CIPSSLOPT

功能:设置指定id连接的SSL参数。

设置指令:

AT+CIPSSLOPT=<id>,<isSSLRoot>,<isSSLClient>[,isSSLCrl]

响应:

OK

参数:

id:指定连接的id号

isSSLRoot:0,不验证根证书;1,验证根根证书

isSSLClient:0,不验证客户端证书;1,验证客户端证书

isSSLCrl:0,不验证证书吊销列表;1,验证证书吊销列表

#AT+CIPSTART

功能:启动一个连接

指令:

AT+CIPSTART=<id>,<type>,[domain],[remote_port],[local_port]

响应:

OK

参数:

id:指定连接的id号,范围:0-4,即最多可创建5个连接。

tpye:连接类型,包括:tcp_server,tcp_client,ssl_client,udp_broadcast,udp_unicast。分别如下:

---1.当type为tcp_server时,参数为:id,tcp_server,local_port;

---2.当type为tcp_client时,参数为:id,tcp_client,domain,remote_port[,local_port];

---3.当type为ssl_client时,参数为:id,ssl_client,domain,remote_port[,local_port];

---4.当type为udp_broadcast时,参数为:id,udp_broadcast,domain,remote_port,local_port;

---5.当type为udp_unicast时,参数为:id,udp_unicast,domain,remote_port,local_port。

domain:目标服务器的IP或域名。当type为tcp_server时,不需要该参数。

remote_port:远程端口。

local_port:本地端口。当type为tcp_client或ssl_client时,该参数为指定本地端口

说明:

立即生效。注意:当前id的连接,如果不是关闭状态,再次设置并连接时,无法成功执行,返回:ERROR。更改任何一个id的参数前,必须要手动关闭,即执行指令:AT+CIPSTOP=id\r,才能正确设置并连接。

#AT+CIPSTOP

功能:断开一个指定id的连接。

指令:

AT+CIPSTOP=<id>[,<remote_port>]

响应:

OK

参数:

id:指定连接的id号。

说明:

立即生效。

#AT+CIPSTATUS

功能:查询指定id的连接状态。

指令:

AT+CIPSTATUS=<id>

响应:

+CIPSTATUS:<type>,<status>

参数:

type:指定id的连接类型,包括:tcp_server,tcp_client,udp_broadcast,udp_unicast,ssl_client。

status:start,初始化;connecting,正在连接;connected,已经连接;disconnected,断开连接;close,停止连接

说明:

立即生效。

对于tcp_server,status的定义有点不一样。如果tcp_server关闭,则status返回时close;如果tcp_server打开,status用于返回当前所有client的数量和每个client的IP地址,端口号和server的端口号。

比如一个端口为1000的tcp_server下面没有client连接,则输出为:+CIPSTATUS:tcp_server,0

如果有一个连接,且对方的IP地址是192.168.1.100,端口是50001,则输出为:

+CIPSTATUS:tcp_server,1

192.168.1.100,50001,1000

#AT+CIPSEND

功能:发送WiFi数据至用户串口。

指令:

AT+CIPSEND=<id>[,<remote_port>],<data_length>\r<data>

响应:

+OK

参数:

id:指定id的连接。

remote_port:连接的远程端口号。仅模块做tcpserver时需要指定远程端口号,其它socket类型不需指定。

data_length:数据长度。单位:byte字节。

data:数据内容。

说明:

立即生效。

示例:

AT+CIPSEND=0,54590,9\r123456789

AT+CIPSEND=1,9\r123456789

#AT+CIPSENDRAW

功能:由AT指令模式跳转至透传模式。

指令:

AT+CIPSENDRAW

响应:

OK

参数:

说明:

立即生效。

退出透传模式请输入+++

#AT+CIPRECV

功能:接收WiFi数据至用户串口。

指令:

AT+CIPRECV=<id>,<port>,<len>

响应:

+CIPRECV=<len>,<data>

OK

参数:

id:指定id号的连接

port:指定连接的远程端口号

len:指定的数据接收长度,单位:byte字节

data:数据

说明:

立即生效。

#AT+CIPRECVCFG

功能:查询/设置WiFi数据发送至用户串口的配置参数。

查询指令:

AT+CIPRECVCFG?

响应:

+CIPRECVCFG:<recvmode>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+CIPRECVCFG=<recvmode>

响应:

OK

参数:

recvmode:0,表示cmd指令模式,需通过指令AT+CIPRECV接收;1,表示raw透传模式,表示自动接收。

说明:

立即生效。

#AT+CIPCFGSAVE

功能:查询/设置是否保持TCPIP的参数,默认ON。

查询指令:

AT+CIPCFGSAVE=?

响应:

+CIPCFGSAVE:<ON/OFF>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+CIPCFGSAVE=<ON/OFF>

响应:

OK

参数:

ON:打开参数保存,后面配置的CIP指令都会保存到Flash,重启会恢复。

OFF:关闭参数保持,之前的所有CIP参数会被清除,后续的配置指令也不会保存,重启后不会启动CIP。

说明:

立即生效。

#五、MQTT通信指令

序号

指令

功能

1

(opens new window)AT+MQTTAUTH

查询/设置MQTT用户授权信息

2

(opens new window)AT+MQTTSOCK

查询/设置MQTTsocket信息

3

(opens new window)AT+MQTTCAVERIFY

查询/设置MQTT证书认证使能状态

4

(opens new window)AT+MQTTSSL

查询/设置MQTTSSL使能状态

5

(opens new window)AT+MQTTCID

查询/设置MQTT客户端标识符

6

(opens new window)AT+MQTTKEEPALIVE

查询/设置MQTT心跳周期

7

(opens new window)AT+MQTTRECONN

查询/设置MQTT自动重连使能状态

8

(opens new window)AT+MQTTAUTOSTART

查询/设置MQTT上电自动连接使能状态

9

(opens new window)AT+MQTTEVENT

查询/设置MQTT事件推送使能状态

10

(opens new window)AT+MQTTSTART

启动MQTT服务

11

(opens new window)AT+MQTTSUB

查询/设置MQTT订阅信息

12

(opens new window)AT+MQTTPUB

查询/设置MQTT发布信息

13

(opens new window)AT+MQTTSEND

MQTT发布数据

14

(opens new window)AT+MQTTUNSUB

MQTT取消订阅

15

(opens new window)AT+MQTTSTATUS

查询MQTT状态

16

(opens new window)AT+MQTTCLOSE

关闭MQTT服务

#AT+MQTTAUTH

功能:查询/设置MQTT用户授权信息。

查询指令:

AT+MQTTAUTH=?

响应:

+MQTTAUTH:<UserName>,<PassWord>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTAUTH=<UserName>,<PassWord>

响应:

OK

参数:

UserName:用户名

PassWord:密码

说明:

立即生效。

#AT+MQTTSOCK

功能:查询/设置MQTTsocket信息。

查询指令:

AT+MQTTSOCK=?

响应:

+MQTTSOCK:<Host>,<Port>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTSOCK=<Host>,<Port>

响应:

OK

参数:

Host:远程URL

Port:远程端口

说明:

立即生效。

#AT+MQTTCAVERIFY

功能:查询/设置MQTT证书认证使能状态。

查询指令:

AT+MQTTCAVERIFY=?

响应:

+MQTTCAVERIFY:<Status1>,<Status2>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTCAVERIFY=<Status1>,<Status2>

响应:

OK

参数:

Status1:是否使能服务器根证书验证,ON:使能,OFF:关闭。

Status2:是否使能验证客户端证书验证,ON:使能,OFF:关闭。

说明:

立即生效。

#AT+MQTTSSL

功能:查询/设置MQTTSSL使能状态。

查询指令:

AT+MQTTSSL=?

响应:

+MQTTSSL:<Status>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTSSL=<Status>

响应:

OK

参数:

Status:是否使能SSL加密,ON:使能,OFF:关闭。

说明:

立即生效。

#AT+MQTTCID

功能:查询/设置MQTT客户端标识符。

查询指令:

AT+MQTTCID=?

响应:

+MQTTCID:<ClientID>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTCID=<ClientID>

响应:

OK

参数:

ClientID:客户端标识符。

说明:

立即生效。

#AT+MQTTKEEPALIVE

功能:查询/设置MQTT心跳周期。

查询指令:

AT+MQTTKEEPALIVE=?

响应:

+MQTTKEEPALIVE:<Period>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTKEEPALIVE=<Period>

响应:

OK

参数:

Period:心跳周期,单位:s(秒)。

说明:

立即生效。

#AT+MQTTRECONN

功能:查询/设置MQTT自动重连使能状态。

查询指令:

AT+MQTTRECONN=?

响应:

+MQTTRECONN:<Status>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTRECONN=<Status>

响应:

OK

参数:

Status:是否使能自动重连。ON:使能,OFF:关闭。

说明:

立即生效。

#AT+MQTTAUTOSTART

功能:查询/设置MQTT上电自动连接使能状态。

查询指令:

AT+MQTTAUTOSTART=?

响应:

+MQTTAUTOSTART:<Status>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTAUTOSTART=<Status>

响应:

OK

参数:

Status:是否使能上电自动连接,ON:使能,OFF:关闭。

说明:

立即生效。在设置参数前发送该指令,ON表示保存参数,OFF表示不保存参数。

#AT+MQTTEVENT

功能:查询/设置MQTT事件推送使能状态。

查询指令:

AT+MQTTEVENT=?

响应:

+MQTTEVENT:<Status>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTEVENT=<Status>

响应:

OK

参数:

Status:是否使能事件推送。ON使能;OFF关闭。

说明:

立即生效。开启此功能后,所有MQTT的事件,模块会通过串口主动输出,格式如下: +MQTTEVENT:<result>。

result参数说明详见AT+MQTTSTATUS指令。

#AT+MQTTSTART

功能:启动MQTT服务。

执行指令:

AT+MQTTSTART

响应:

OK

参数:

说明:

立即生效。

#AT+MQTTSUB

功能:查询/设置MQTT订阅信息。

查询指令:

AT+MQTTSUB=?

响应:

+MQTTSUB:<sub_num>

<id_0>,<Topic_0>,<QoS_0>

...

<id_n>,<Topic_n>,<QoS_n>

OK

参数:

sub_num:查询到的主题列表数,最大为6

其余参数参考设置指令。

说明:

立即生效。

设置指令:

AT+MQTTSUB=<id>,<Topic>,<QoS>

响应:

OK

参数:

id:为每一个主题分配的id号,取值范围0-5。

Topic:订阅的主题。

QoS:订阅主题的QoS,取值范围:0-2。

说明:

立即生效。

#通配符订阅

AT+MQTTSUB命令参数的Topic的最后2个字符为'/#',则被视为通配符订阅。

对于通配符订阅,当接收到服务器发过来的订阅消息后,模组通过MQTT EVENT事件返回数据给MCU时的内容会有所不同。

默认接收到订阅消息的事件为:+MQTTRECV:id,length,data

其中id是这里订阅时使用的id号。

而通配符订阅,返回的事件内容为:+MQTTRECV:#,topic,length,data

因为第一个参数是字符‘#’,表示这是通过通配符订阅的消息,第二个参数是实际的topic,第三个参数是消息的字节数,第四个参数是消息内容。

#AT+MQTTPUB

功能:查询/设置MQTT发布信息。

查询指令:

AT+MQTTPUB=?

响应:

+MQTTPUB:<Topic>,<QoS>

OK

参数:

请参考设置指令参数。

说明:

立即生效。

设置指令:

AT+MQTTPUB=<Topic>,<QoS>

响应:

OK

参数:

Topic:发布信息的主题。

QoS:发布信息的QoS,范围:0-2。

说明:

立即生效。本主题仅用于设置topic和QoS,使用AT+MQTTSEND=<len>指令发布数据。向不同的Topic发布数据前,需先调用AT+MQTTPUB=<Topic>,<QoS>指令,更换相应的Topic和QoS。

#AT+MQTTSEND

功能:MQTT发布数据

执行指令:

AT+MQTTSEND=<len>

响应:

>

参数:

len:发布数据的字节长度。

说明:

立即生效。收到>后,需向模块发送指定长度的数据,模块会向远端发布数据。

#AT+MQTTUNSUB

功能:MQTT取消订阅

执行指令:

AT+MQTTUNSUB=<id>

响应:

OK

参数:

id:取消订阅的主题对应的id号

说明:

立即生效。

#AT+MQTTSTATUS

功能:查询MQTT状态。

查询指令:

AT+MQTTSTATUS=<action>[,id>]

响应:

+MQTTSTATUS:<result>

OK

参数:

action:客户端相对于远端的行为,包括3类:connect,subscribe,publish。

id:可选参数,当action的值为subscribe时,需指定id号

result:返回的状态结果。根据不同的action值,总共包括下面各种不同的结果

1.action的值为connect时,返回:

——CONNECT,SUCCESS   连接成功

——CONNECT,INIT_ERROR 初始化错误

——CONNECT,FAIL    连接失败

——CONNECT,RECONNECTING正在连接

——CLOSE,SUCCESS    关闭成功

——CLOSE,FAIL     关闭失败

2.action的值为subscribe时,返回:

——SUBSCRIBE,SUCCESS  订阅成功

——SUBSCRIBE,FAIL   订阅失败

——UNSUBSCRIBE,SUCCESS 取消订阅成功

——UNSUBSCRIBE,FAIL  取消订阅失败

3.action的值为publish时,返回:

——PUBLISH,SUCCESS   发布成功

——PUBLISH,FAIL    发布失败

说明:

立即生效。

#AT+MQTTCLOSE

功能:关闭MQTT服务

执行指令:

AT+MQTTCLOSE

响应:

OK

参数:

说明:

立即生效。

#MQTT EVENT事件

MQTT连接的建立、关闭,消息的发布、订阅,无论成功与否,都会产生EVENT事件,详见本文末尾“EVENT事件”。

#六、配网管理指令

序号

指令

功能

1

(opens new window)AT+SMARTSTART

设置配网方式,并启动

2

(opens new window)AT+SMARTSTOP

停止设置的配网方式

#AT+SMARTSTART

功能:设置配网方式:Easylink或Airkiss,并启动配网。

执行指令:

AT+SMARTSTART=<type>

响应:

OK

+SMARTEVENT:SUCCESS 配网成功

+SMARTEVENT:FAIL 配网失败

参数:

type:整数类型。

1:Easylink配网

2:Airkiss配网;

3:EasylinkAWS配网。

4:Easylink+Airkiss融合配网;

5:SoftAP配网(只支持IOS最新版EasylinkAPP)。

流程参考《Softap 配网协议》

6:BLE配网(只有combo模组支持)

流程参考:《Combo模组蓝牙配网协议》。

说明:

立即生效。

BLE配网从A266版本起,去掉广播包的local name字段,由scan response里面通知自己的名字,这个名字随着device name配置(AT+BNAME (opens new window)),默认为MX。

#AT+SMARTSTOP

功能:停止设置的配网方式。

执行指令:

AT+SMARTSTOP=<type>

响应:

OK

参数:

type:1:表示Easylink配网;2:表示Airkiss配网;3:表示EasylinkAWS配网。

说明:

立即生效。注意:参数3:EasylinkAWS配网,该指令不适用与AlinkV3阿里直连AT固件。

#AT+SMARTCFG

功能:设置Airkiss配网参数。

设置指令:

AT+SMARTCFG=<device_id>,<original_id>

响应:

OK

参数:

device_id:字符串,微信注册时后台提供。

original_id:字符串,微信注册时后台提供。

说明:

立即生效。

#七、SNTP时间同步指令

#AT+SNTPCFG

功能:设置NTP域名。

设置指令:

AT+SNTPCFG=<time_zone>[,<domain1>[,<domian2>]]

响应:

OK

参数:

time_zone:时区,如北京:+8

domain1:NTP服务器域名1

domian2:NTP服务器域名2

说明:

立即生效。

#AT+SNTPTIME

功能:获取NTP时间。

执行指令:

AT+SNTPTIME

响应:

+SNTPTIME:<time>

OK

参数:

time:形如 2017-09-05T13:34:35.063568,表示:当前SNTP时间为2017年9月5日13点34分35秒63568微秒。

说明:

立即生效。

#AT+RTCGET

功能:获取NTP时间。

执行指令:

AT+RTCGET

响应:

+RTCGET:<time>

OK

参数:

time:形如2017-09-05T13:34:35.063568,表示:当前RTC时间为2017年9月5日13点34分35秒63568微秒。

说明:

立即生效。

#八、HTTP文件下载指令

#AT+FILELOADHEADER

功能:设置HTTP下载的文件时发送的HTTP请求的额外的header信息,比如配置:Accept-Encoding: gzip。

设置指令:

AT+FILELOADHEADER=<len>\r<header>

响应:

OK

参数:

len:header包含的字节数

说明:

header的字节数一定要和len的值匹配,这个参数不会保存到Flash,重启会丢失。如果需要配置header,则需要先调用这个指令设置,再调用AT+FILELOAD去发起HTTP下载。如果要删除之前配置的header,则设置len=0。

#AT+FILELOAD

功能:设置HTTP下载的文件的URL和模式。

设置指令:

AT+FILELOAD=<mode>,<URL>

响应:

OK

参数:

mode:模式,0=主动模式,1=被动模式

URL:HTTP下载文件的完整URL

说明:

接收到命令就立即建立HTTP连接。

主动模式:接收到的文件数据直接使用HTTP的event通知给MCU,通知HTTP文件数据的串口数据包格式如下:

\r\n+FILELOADEVENT:<total_len>,<download_len>,<data_len\r\n<data">

<p id=" ua7900cc5"="" class="ne-p" style="text-align: left>\r\n

其中,total_len是文件的总长度,download_len是已下载的长度,data_len是这一次event通知的数据的长度,data就是二进制数据。

被动模式:需要通过AT+FILELOADR指令读取。

#AT+FILELOADR

功能:读取HTTP下载的文件数据,仅用于被动模式。

设置指令:

AT+FILELOADR=<data_len>

响应:

\r\n+FILELOADEVENT:<total_len>,<download_len>,<data_len\r\n<data">

<p id=" ub296a892"="" class="ne-p" style="text-align: left>\r\n

其中,total_len是文件的总长度,download_len是已下载的长度,data_len是这一次event通知的数据的长度,data就是二进制数据。

参数:

data_len:本次HTTP读取的文件字节数,1到2048字节。

说明:

立即返回,如果当前接收到的字节数不足,则返回已接收到的字节数。

#AT+FILELOADQ

功能:退出HTTP文件下载。

设置指令:

AT+FILELOADQ

响应:

OK

参数:

说明:

退出当前正在下载文件的任务。

#九、HTTP传输指令

#AT+HTTPSV

功能:配置需要连接的HTTP服务器的地址

设置指令:

AT+HTTPSV=<domain>,<port>,<is_ssl>

响应:

OK

参数:

domain: http服务器的域名或IP地址

port: http服务器的端口

is_ssl:是否使用ssl,0=不使用,1=使用

说明:

立即返回,保存http服务器地址参数,不连接。

#AT+HTTPREQ

功能:配置HTTP使用的method

设置指令:

AT+HTTPREQ=<method>

响应:

OK

参数:

method:只能设置POST或者GET。

说明:

立即返回,保存http method,不连接。

#AT+HTTPPATH

功能:配置HTTP请求的路径

设置指令:

AT+HTTPPATH=<path>

响应:

OK

参数:

path:是一个字符串,不包含域名

说明:

立即返回,保存http path,不连接。

#AT+HTTPTIMEOUT

功能:配置HTTP等待回复的超时时间

设置指令:

AT+HTTPTIMEOUT=<timeout>

响应:

OK

参数:

timeout:1到30的一个数字,表示最长等待回复的时间是1到30秒的一个时间,默认10秒。

说明:

立即返回,保存http timeout,不连接。

#AT+HTTPHEADER

功能:配置HTTP请求时发送的HTTP header的内容

设置指令:

AT+HTTPHEADER=<header>或者AT+HTTPHEADER=<len>\r\n<header>

响应:

OK

参数:

参数有2种格式:

1、直接是一个字符串,用于发起HTTP请求时,头部填充的内容。这种方式header不等你包含换行符。

2、len是一个数字,是实际需要传输的header字符串的字节数;然后在接收到这个指令以后,模组会输出一个等待输入符">",后面len个字节为header的实际字符内容。这种方式header可以是任意的字符。

说明:

立即返回,保存参数,不连接。

如果不配置,默认的header内容为:"Accept:text/html\r\nAccept-Language:zh-CN\r\nUser-Agent:Mozilla/5.0\r\nConnection: Keep-Alive\r\n"

#AT+HTTPSEND

功能:发起HTTP请求

设置指令:

AT+HTTPSEND=<len>\r\n<data>

响应:

OK

参数:

len: 后面data的字节数。len>=0。

data:实际要发送给服务器的数据。

每执行一次这个指令,就会向HTTP发起一条连接请求,data会当做HTTP的body内容发送给服务器,如果len=0就没有body。

HTTP服务器返回的数据会以+HTTPEVENT事件的方式返回。返回的事件会以多个EVENT的形式返回,每包包含一部分内容。

EVENT格式为"\r\n+HTTPEVENT:<len>\r\n<data...>

其中len是data的字节数,data是实际的HTTP返回的内容。所有的HTTPEVENT的data合并到一起就构成了一个完整的HTTP数据。

说明:

阻塞返回,收到完整的HTTP回复,或者HTTP超时。

#AT+HTTPSENDRAW

功能: 进入HTTP透传模式

设置指令

AT+HTTPSENDRAW

响应

+OK

说明

立即生效。

说明

HTTP透传模式下,串口每接收到一帧数据,就会打包成一个HTTP请求同服务器通讯,并把服务器的回复数据直接通过串口输出。

说明

退出HTTP透传,请输入+++

#**十、EMC系列蓝牙AT配网指令**

BLE 指令列表

序号

指令

功能

1

(opens new window)AT+BNAME

 查询/设置 BLE名称  

2

AT+BMAC

查询BLE的MAC地址

3

(opens new window)AT+BLE

开启或关闭BLE功能

4

(opens new window)AT+BSTATUS

查询BLE的状态 

5

(opens new window)AT+BSEND

指令模式时发送数据

6

AT+BENDRAW

蓝牙透传模式

7

AT+BSENDNK

指令模式时发送数据无返回

8

(opens new window)AT+BSERVUUID

查询/设置 服务的uuid

9

(opens new window)AT+BRXUUID

查询/设置 接收的uuid

10

(opens new window)AT+BTXUUID

查询/设置 发送的uuid

11

AT+BEVENT

设置/查询监听BLE事件

12

AT+BINQ

开始扫描

13

AT+BSINQ

停止扫描

14

AT+BCONN

连接到从设备

15

AT+BROLE

查询/设置BLE角色

16

AT+BKEY

设置/查询BLE配对密码

#AT+BNAME

功能:查询/设置 BLE名称

查询指令:

AT+BNAME?

响应:

+BNAME:<name>

设置指令:

AT+BNAME=<name>

响应:

OK

说明:

最多可设置16个字节,超过16个字节返回ERROR。

#AT+BMAC

功能:查询BLE的MAC地址

查询指令:

AT+BMAC?

响应:

+BMAC:<mac>

参数:

mac:设备的MAC地址,格式为 xx:xx:xx:xx:xx:xx

#AT+BLE

功能:查询/设置 开启或关闭BLE功能

设置指令:

AT+BLE=<state>

响应:

OK

响应:

AT+BLE?

参数:

state: 开关状态

ON : 开启BLE功能

OFF : 关闭BLE功能

#AT+BSTATUS

功能:查询BLE的状态

查询指令:

AT+BSTATUS?

响应

+BSTATUS:<status>

参数

status:

DISCONNECTED:连接断开

CONNECTED:已建立连接

#AT+BMTU

功能:查询BLE的MTU

查询指令:

AT+BMTU?

响应

+BMTU:<MTU>

参数

MTU: 是BLE的MTU的值,默认是185,当有BLE连接建立以后,返回同remote端协商后的MTU的值。AT+BSEND能发送的最大数据长度不能超过MTU的值。

#AT+BSEND

功能: 指令模式时发送数据

设置指令

AT+BSEND=<length>\r<data>

响应

+OK

参数

length:将要发送的数据长度

说明

当用户收到>响应时,应该立即将指定长度的数据通过串口发送。BLE设备将会接收并将这些数据透传到已连接的蓝牙主机
注意:设备内部在返回>响应后,会在规定时间内等待用户数据。如果已经超时,那么设备将只发送已经收到的数据。超时时间一般为6s。

#AT+BSENDRAW

功能: 进入蓝牙透传模式

设置指令

AT+BSENDRAW

响应

+OK

说明

立即生效

说明

退出蓝牙透传,请输入+++

#AT+BSENDNK

功能: 指令模式时发送数据无返回

设置指令

AT+BSEND=<length>\r<data>

响应

无响应

参数

length:将要发送的数据长度

说明

发送指定长度数据,无OK返回

#AT+BSERVUUID

功能:查询/设置 服务的uuid

设置指令

AT+BSERVUUID=<uuid>

响应

+OK

查询指令

AT+BSERVUUID?

响应

+BSERVUUID:<uuid>

参数

uuid : 服务的uuid

#AT+BRXUUID

功能:查询/设置 接收的uuid

设置指令

AT+BRXUUID=<uuid>

响应

+OK 

查询指令

AT+BRXUUID?

响应

+BRXUUID:<uuid>

uuid : 服务接收的uuid

#AT+BTXUUID

功能:查询/设置 发送的uuid

设置指令

AT+BTXUUID=<uuid>

响应

+OK  

查询指令

AT+BTXUUID?

响应

+BTXUUID:<uuid>

参数

uuid: 服务发送的uuid

#AT+BROLE

功能:查询/设置 BLE主从

设置指令

AT+BROLE=<role>

响应

+OK  

查询指令

AT+BROLE?

响应

+BROLE:<role>

参数

role: 0:slave,1:master

#AT+BINQ

功能:扫描从设备

执行指令:

AT+BINQ=<scan_type>,<string>

响应:

OK

参数:

scan_type:0=scanbyserviceuuid,string=uuidhexstring.

scan_ytpe:1=scanbydevicename,string=devicename.

+BEVENT:SCAN,<Num>,<MAC>,Num:序号。MAC:扫描到的设备的MAC。

#AT+BSINQ

功能:停止扫描

执行指令:

AT+BSINQ

响应:

OK

参数:

#AT+BCONN

功能:连接从设备

设置指令

AT+BCONN=<Num>

响应

+OK  

参数

Num: 扫描结果的序号

#AT+BEVENT

功能:设置/查询监听BLE事件

设置指令

AT+BEVENT=<state>

响应

+OK 

查询指令

AT+BEVENT?

参数

state : 

ON  : 开启事件通知功能

OFF : 关闭事件通知功能

#AT+BKEY

功能:设置/查询BLE配对密码

设置指令

AT+BKEY=<enable>,<key>

响应

+OK 

查询指令

AT+BKEY?

如果打开了配对密钥,则返回:+BLEKEY:123456 如果没有打开配对密钥,则返回:+BLEKEY:OFF

参数

enable : 0=关闭配对密钥;1=打开配对密钥

key:如果打开配对密钥,则必须输入key,合法范围是0到999999

#EVENT事件通知

根据不同的功能,EVENT 事件通知包括:

+BEVENT  起始的:  代表与 BLE 通信相关事件消息

序号

BLE 通知

BLE 通信状态

1

+BEVENT:CONNECTION,ON

与主机连接成功

2

+BEVENT:CONNECTION,OFF

与主机连接断开

3

+BEVENT: DATA ,<length> ,<data>

接收主机透传数据

4

+BEVENT:SCAN,<Num>,<MAC>

扫描从设备结果

#十一、以太网透传指令

注:该以太网指令,仅EMW3080系列支持。

序号

指令

功能

1

(opens new window)AT+ENETRAWMODE

设置/查询以太网透传模式状态

2

(opens new window)AT+ENETRAWSEND

发送以太网数据

#AT+ENETRAWMODE

功能:设置/查询以太网透传模式状态

查询指令:

AT+ENETRAWMODE?

响应:

+ENETRAWMODE:<mode>

OK

参数:

请参考设置指令参数

设置指令:

AT+ENETRAWMODE=<mode>

响应:

OK

参数:

mode:ON:开启;OFF:关闭;开始以太网透传模式后,TCP/IP相关功能将失效

说明:

立即生效。

#AT+ENETRAWSEND

功能:发送以太网数据

指令:

AT+ENETRAWSEND=<data_length>

响应:

> 等待输入指定长度的date数据,1分钟内输入有效。

参数:

data_length:数据长度。单位:byte字节。

说明:

立即生效。

#十二、固件OTA指令

wifi固件ota指令

序号

指令

功能

1

AT+URLOTA

 wifi模组更新固件

#AT+URLOTA

功能:wifi模组更新固件

设置指令:

AT+URLOTA=<url of ota bin>

响应:

OK

+OTAEVENT:SUCCESS 表示OTA成功

+OTAEVENT: FAIL 表示OTA失败

参数:

url of ota bin:需更新文件的完整URL

说明:

可更新至低版本,也可更新至高版本。且OTA过程必须保证持续联网不断开,否则可能导致更新失败。OTA成功后,设备自动重启。

下述指令暂停使用

注意:所有型号的模组自ATv2.0.3版本后AT固件支持通过AT指令实现在线OTA功能(注意:直连阿里ilop飞燕平台固件除外,其OTA功能实现请查看具体说明文档)。

#AT+OTACHECK

功能:查询云端AT固件版本号。

查询指令:

AT+OTACHECK

响应:

+OTACHECK:<version>

+OK

参数:

version:云端的所有ota固件的版本号。形如:fog_v3_AT_v2.0.4。

说明:

模块首先需要开启STATION模式,并成功连接至AP,才能执行该指令。

注意:

AT2.x固件,自v2.0.3开始支持远程联网OTA功能。

#AT+OTASTART

功能:更新指定版本号的AT固件。

更新指令:

AT+OTASTART=<version>

响应:

+OK

+OTAEVENT:START表示开始OTA过程。

+OTAEVENT:SUCCESS表示OTA成功。

参数:

version:云端的所有ota固件的版本号。形如:fog_v3_AT_v2.0.4。

说明

用户可根据需要更新指定版本号的固件,可更新至低版本,也可更新至高版本。且OTA过程必须保证持续联网不断开,否则可能导致更新失败。该过程大概持续几秒到10秒左右。OTA成功后,设备自动重启。

#十三、电源管理指令

#AT+WLPC

功能:查询/设置WiFi低功耗

查询指令:

AT+WLPC=?

41 54 2B 574C5043 3F 0D

响应:

+WLPC=<mode>

OK

参数:

mode:ON:表示已开启WiFi低功耗模式;OFF:表示未开启WiFi低功耗模式。

设置指令:

AT+WLPC=<mode>

响应:

OK

参数:

mode:ON:表示开启WiFi低功耗模式;OFF:表示关闭WiFi低功耗模式。

说明:

立即生效,状态掉电保存。

#EVENT事件通知

根据不同的功能,EVENT事件通知包括:

  1. +WEVNET 起始的: 代表与WiFi功能相关的事件消息。
  2. +CIPEVENT起始的: 代表与网络连接功能相关的事件消息。
  3. +MQTTEVENT起始的: 代表与MQTT通信相关的事件消息。
  4. +BTEVENT 起始的: 代表与经典蓝牙透传相关的事件消息。
  5. +ENETEVENT起始的: 代表与以太网功能相关的时间消息。
  6. +OTA   起始的: 代表与OTA过程相关的事件消息。
  7. +ILOP  起始的: 代表与ILOP连接状态相关的事件消息。
  8. +GOME  起始的: 代表与GOME连接状态相关的事件消息。

序号

事件消息

描述

一类

WiFi通知

WiFi状态

1

+WEVENT:AP_UP

Soft_AP创建成功

2

+WEVENT:AP_DOWN

Soft_AP创建失败

3

+WEVENT:STATION_UP

STATION连接成功

4

+WEVENT:STATION_DOWN

STATION连接失败

二类

网络通知

网络连接状态

1

+CIPEVENT:id,SERVER,CONNECTED

成功连接到指定id链接的TCP服务器

2

+CIPEVENT:id,SERVER,DISCONNECTED

与链接号为id的TCP服务器断开连接

3

+CIPEVENT:id,SERVER,CLOSED

成功停止指定id链接的TCP服务器

4

+CIPEVENT:CLIENT,CONNECTED,ip,port

成功连接到该ip地址和port端口的TCP客户端

5

+CIPEVENT:CLIENT,CLOSED,ip,port

成功停止该ip地址和port端口的TCP客户端

6

+CIPEVENT:id,UDP,CONNECTED

UDP连接成功

7

+CIPEVENT:id,UDP,CLOSED

UDP连接失败

8

+CIPEVENT:SOCKET,id,len,data

标识网络数据来源

9

+CIPEVENT:UDP_BROADCAST,ip,port,id,len,data

UDP广播数据来源及信息,从ATv2.0.3版本开始支持。

三类

MQTT通知

MQTT通信状态

1

+MQTTEVENT:CONNECT,SUCCESS

与MQTT服务器连接成功

2

+MQTTEVENT:CONNECT,INIT_ERROR

与MQTT服务器连接初始化出错

3

+MQTTEVENT:CONNECT,FAIL

与MQTT服务器连接失败

4

+MQTTEVENT:CONNECT,RECONNECTING

与MQTT服务器重新连接中

5

+MQTTEVENT:CLOSE,SUCCESS

MQTT通信关闭成功

6

+MQTTEVENT:CLOSE,FAIL

MQTT通信关闭失败

7

+MQTTEVENT:SUBSCRIBE,SUCCESS

MQTT订阅成功

8

+MQTTEVENT:SBUSCRIBE,FAIL

MQTT订阅失败

9

+MQTTEVENT:UNSUBSCRIBE,SUCCESS

MQTT取消订阅成功

10

+MQTTEVENT:UNSUBSCRIBE,FAIL

MQTT取消订阅失败

11

+MQTTEVENT:PUBLISH,SUCCESS

MQTT发布成功

12

+MQTTEVENT:PUBLISH,FAIL

MQTT发布失败

13

+MQTTRECV:id,length,data

收到之前订阅过的MQTT消息

  • id:AT+MQTTSUB指令中指定的id
  • length:MQTT消息的长度
  • data:MQTT消息的内容(payload)

+MQTTRECV:#,topic,length,data

收到之前订阅的通配符MQTT消息

  • #:表示是通配符订阅消息
  • topic:真实的topic
  • length:MQTT消息的长度
  • data:MQTT消息的内容(payload)

四类

BT通知

BT通信状态

1

+BTEVENT:CONNECTION,ON

与RFCOMM远端主机连接成功

2

+BTEVENT:CONNECTION,OFF

与RFCOMM远端主机断开连接

3

+BTEVENT:DATA,length

收到RFCOMM远端主机透传的数据

五类

以太网透传通知

以太网透传事件

1

+ENETEVENT:len,data

标识以太网透传数据

六类

OTA通知

OTA状态

1

+OTAEVENT:START

开始OTA固件更新过程

2

+OTAEVENT:SUCCESS

OTA固件更新成功

七类

HTTP通知

1

+HTTPEVENT:<len>\r\n<data...>

data:服务器返回的HTTP数据,len:data的字节数

END.

更新时间: 2024/10/16 14:17:55