ESP8266常用AT指令
一、AT指令重点、常见错误
- 指令必须大写,不支持小写
- 用“\r\n”作结尾
- 串口通信:115200-None-8-1
- 发送指令后没有收到反馈,一般是指令本身有错误,或者接线不对
- 支持2.4G频段,不支持5G频段,如果手机创建热点,注意选择2.4G
- 不支持中文WIFI名称
- 工作模式,上电瞬间蓝色指示灯状态;闪两下:正常运行模式;闪一下:烧录模式。
二、常用AT指令
AT指令 |
说明 |
AT |
测试 |
AT+RST |
重启 |
AT+GMR |
查看版本号 |
AT+CMD? |
列出固件支持的AT指令 |
AT+RESTORE |
恢复出厂设置 |
ATCWMODE=3 |
设置工作模式 |
AT+CWMODE? |
查询工作模式 |
AT+CWLAP |
查询附近的WiFi列表 |
AT+CWJAP="WIFI name","WIFI passwd" |
连接WiFi |
AT+CWQAP |
断开当前连接的WiFi |
AT+CIFSR |
查询本模块IP |
AT+CWSAP="WIFI name","WIFI passwd" |
建立热点 |
AT+CELIF |
查询接入本热点的IP |
AT+UART=115200,8,1,0,0 |
设置波特率 |
三、常用TCP/IP相关AT指令
AT指令 |
说明 |
AT+CIPSTATUS |
查询网络连接信息 |
AT+CIPMUX=1 |
设置多连接模式 |
ATCIPSTART="模式","IP",端口 |
建立TCP、UDP、SSL连接 |
AT+CIPCLOSE |
关闭TCP、UDP、SSL连接 |
AT+CIPSERVER=1,1026 |
设置服务器监听 |
AT+CIPMODE=1 |
设置透传模式 |
+++ |
退出透传模式 |
AT+CIPSEND |
发送数据 |
四、上云常用的MQTT指令
ESP8266出厂时默认是AT指令固件,需要使用MQTT指令时,需要烧录MQTT固件。
如何判断ESP8266使用的是AT固件还是MQTT固件?
发送"AT+CMD?\r\n",能返回支持指令列表,且带AT+MQTT…这类指令,则为MQTT固件。
以阿里云为例,创建产品、添加设备属性后,在设备查看页面里,获得下列七个参数,并替换指令里的字符串:
username、passwd、clientId、mqttHostUrl、ProductKey、DeviceName、Port
指令 |
解释说明 |
AT+MQTTUSERCFG=0,1,"NULL","username","passwd",0,0,"" |
发送MQTT的登录用户名和密码 |
AT+MQTTCLIENTID=0,"clientId" |
发送MQTT的ClientID |
AT+MQTTCONN=0,"mqttHostUrl",1883,1 |
设置MQTT接入地址 |
AT+MQTTSUB=0,"/ProductKey/DeviceName/user/get",1 |
订阅 |
AT+MQTTPUB=0,"sys//ProductKey/DeviceName/thing/event /property/post","{params:{\"标识符\":设置的数据}}“,0,0 |
上报数据 |
AT+MQTTPUB=0,"sys//ProductKey/DeviceName/thing/event /property/post","{params:{\"Temp\":15.2\, \"Humi\":87.6}}“,0,0 |
上报示例:上报两个属性 |