本篇文章主要是三个部分,刷入官方原厂固件,进入透传模式,常用的AT指令集。有时候控制端不需要MCU反馈信息,那么就可以使用透传模式进行控制。USB转ESP8266通常再买回来的时候就已经刷入了官方固件,但是如果自己要重新刷入就需要USB转TTL,所以最好一次买两个USB-TTL,一个焊接好作为烧录器,另一个日常使用是比较方便的。
固件刷入
这个是固件库(2015版本也是适配的)的下载链接:https://img.zouchanglin.cn/ESP8266-01S.zip
如何进入透传模式
透传就是指不需要关心WIFI协议是如何实现的,所需要做的就是A通过串口发数据,B通过串口收数据,整个过程中A串口和B串口就像是用导线直接连接起来了一样。则对于开发人员来看,就是完全透明的。
上图是ESP8266作为透传的媒介,达到服务端把数据交给MCU的流程。
手动进入透传模式
AT+CWMODE=1
AT+CWJAP=“HuaweiLinkV9”,“password”
AT+CIPSTART=“TCP”,“192.168.0.122”,8080
AT+CIPMODE=1 进入透传
AT+CIPSEND 开始透传
+++(不带换行)退出透传
AT+CIPMODE = 0(带换行)不进透传
开机直接进入透传
AT+CWMODE=1
AT+CWJAP=“HuaweiLinkV9”,“password”
AT+CIPSTART=“TCP”,“192.168.0.122”,8080
AT+SAVETRANSLINK=1,“192.168.0.122”,8080,“TCP”
+++(不带换行)退出透传
AT+CIPMODE = 0(带换行)退出透传
一、基础指令
1、测试指令
2、复位指令
二、设置指令
1、设置波特率
指令 |
返回 |
AT+CIOBAUD=BaudRate |
OK |
默认波特率为115200,BaudRate可取值为:2400、4800、9600、14400、19200、38400、43000、57600、76800、115200、128000、230400、自定义
2、设置工作模式
取值 |
说明 |
1 |
Station模式(客户端) |
2 |
AP模式(服务器、热点) |
3 |
Station+AP模式(混合模式) |
此指令需重启生效
3、设置AP模式下的参数
指令 |
返回 |
AT+CWSAP=“SSID”,“PWD”,CHL,ECN |
OK |
参数 |
定义 |
说明 |
SSID |
该AP名称 |
字符串 |
PWD |
密码 |
字符串 |
CHL |
通道号 |
字符串 ,取值为1~14任选 |
ECN |
加密方式 |
0 |
OPEN |
1 |
WEP |
2 |
WPA-PSK |
3 |
WPA2-PSK |
4 |
WPA-WPA2-PSK |
4、设置透传模式
默认是0,为缺省模式
5、设置为服务器
指令 |
返回 |
AT+CIPSERVER=1,PORT |
OK |
参数 |
定义 |
说明 |
PORT |
端口号 |
一般用8080,自定义即可 |
1代表建立服务器,所以只能选1,端口号没有固定值,自己定义好就可以使用
6、设置为多连接
7、设置加入AP
指令 |
返回 |
AT+CWJAP=“SSID”,“PWD” |
OK |
参数 |
定义 |
SSID |
接入AP的名称 |
PWD |
接入AP的密码 |
8、设置退出AP
9、设置发送数据
状态 |
指令 |
说明 |
单路连接(AT+CIPMUX=0) |
AT+CIPSEND=Length |
模块收到指令后先换行返回”>”,然后开始接收串口数据,当数据长度满Length时发送数据,如果未建立连接或连接被断开,返回ERROR;如果数据发送成功,返回SEND OK,ID为客户端编号。 |
多路连接(AT+CIPMUX=1) |
AT+CIPSEND=ID,Length |
模块收到指令后先换行返回”>”,然后开始接收串口数据,当数据长度满Length时发送数据,如果未建立连接或连接被断开,返回ERROR;如果数据发送成功,返回SEND OK,ID为客户端编号。 |
10、设置服务器主动断开时间
指令 |
返回 |
AT+CIPSTO=Timeout |
断开时间(0~28800s) |
参数 |
说明 |
Timeout |
服务器主动断开时间0~28899秒 |
11、恢复出厂设置
三、查询指令
1、查询服务器主动断开时间
指令 |
返回 |
AT+CIPSTO? |
断开时间(0~28800s) |
2、查询是否为透传
3、查询本地IP地址
4、查询是否为多连接
5、查询当前AP配置的参数
6、查询当前连接的的AP
7、查询当前工作模式
8、查询固件版本
指令 |
返回 |
AT+GMR |
AT version:1.2.0.0(Jul 1 2016 20:04:45) SDK version:1.5.4.1(39cb9a32) Ai-Thinker Technology Co. Ltd. v1.5.4.1-a Nov 30 2017 15:54:29 OK |