AT基础指令
type | 格式 | 描述 |
---|---|---|
Test | AT+CMD=? | 返回可设置命令,参数范围 |
Query | AT+CMD? | 返回参数的当前值 |
Set | AT+CMD=Parameter | 预设值,模式 |
Execute | AT+CMD | 执行命令 |
notes:
不是所有指令都有四种方式
字符串情况要用”“双引号 eg:
AT+CWSAP=“ESP756190”,”21030826”,1,4. 设置AP模式账号密码
波特率默认为115200
AT指令ends with “\r\n”
AT基础指令
AT !!测试是否安装AT固件
AT+RST !!RESTART MODULE
AT+GMR !!View version info
AT+GSLP !!Enter deep sleep mode AT+GSLP=time 深度睡眠模式 单位MS毫秒
ATE !!AT commands echo 当向模块发送ATE1时,则回显功能生效,ATE0 失效
1、 AT+RST
功能:重启模块
2、AT+CWMODE=
3、AT+ CWSAP=
4、AT+CWLIF
功能:查看已接入设备的 IP
5、AT+CIFSR
功能:查看本模块的 IP 地址
注意:
AP 模式下无效!会造成死机现象!
6、AT+CWMODE?
功能:查看本机配置模式
7、AT+CIPMUX?
功能:查询本模块是否建立多连接
说明:
8、AT+CIPMODE?
功能:查询本模块的传输模式
说明:
9、AT+CIPSTO?
功能:查询本模块的服务器超时时间
10、AT+CIPMUX=1
功能:开启多连接模式
11、AT+CIPSERVER=1,8080
功能:创建服务器
AT+CIPSERVER=0 关闭服务器
说明: mode>:0-关闭 server 模式
1-开启 server 模式
port>:端口号,缺省值为 333
说明:
(1) AT+ CIPMUX=1 时才能开启服务器;关闭 server 模式需要重启
(2)开启 server 后自动建立 server 监听,当有 client 接入会自动按顺序占用一个连接。
12、AT+CIPSTO=2880
功能:设置服务器超时时间
13、AT+CIPSTATUS
功能:查看当前连接
说明: id>:连接的 id 号 0-4
type>:字符串参数,类型 TCP 或 UDP
addr>:字符串参数, IP 地址
port>:端口号
tetype>: 0-本模块做 client 的连接, 1-本模块做 server 的连接
14、AT+CIPSEND=1,6
功能:向某个连接发送数据
指令: 1)单路连接时(+CIPMUX=0),指令为: AT+CIPSEND=length>
2)多路连接时(+CIPMUX=1) ,指令为: AT+CIPSEND= id>,length>响应:收到此命令后先换行返回”>”,然后开始接收串口数据,当数据长度满 length 时发送数据。如果未建立连接或连接被断开,返回 ERROR 如果数据发送成功,返回 SEND OK
说明: id>:需要用于传输连接的 id 号
length>:数字参数,表明发送数据的长度,最大长度为 2048
15、AT+CIPSERVER=0
功能:关闭 server 服务
指令: AT+CIPSERVER=mode>[,
指令: 1)单路连接时(+CIPMUX=0),指令为: AT+CIPSTART= type>,addr>,port>
2)多路连接时(+CIPMUX=1),指令为: AT+CIPSTART=id>,type>,addr>,port>
响应:如果格式正确且连接成功,返回 OK,否则返回 ERROR
如果连接已经存在,返回 ALREAY CONNECT
说明: id>:0-4,连接的 id 号
type>:字符串参数,表明连接类型, ”TCP”-建立 tcp 连接, ”UDP”-建立 UDP 连接
addr>:字符串参数,远程服务器 IP 地址
port>:远程服务器端口号
17、AT+CIPSEND=2,8
指令: 1)单路连接时(+CIPMUX=0),指令为: AT+CIPSEND=length>
2)多路连接时(+CIPMUX=1) ,指令为: AT+CIPSEND= id>,length>
响应:收到此命令后先换行返回”>”,然后开始接收串口数据
当数据长度满 length 时发送数据。
如果未建立连接或连接被断开,返回 ERROR
如果数据发送成功,返回 SEND OK
说明: id>:需要用于传输连接的 id 号
length>:数字参数,表明发送数据的长度,最大长度为 2048
18、AT+CWLAP
功能:查看当前无线路由器列表
响应:正确: (终端返回AP列表)
- CWLAP: ecn>,ssid>,rssi>
OK
错误: ERROR
说明: < ecn >:0-OPEN, 1-WEP, 2-WPA_PSK, 3-WPA2_PSK, 4-WPA_WPA2_PSK
ssid>:字符串参数,接入点名称
rssi>:信号强度
19、AT+CWJAP=”MERSAIN”,”XXXXXXXX”
功能:加入当前无线网络
指令: AT+CWJAP=ssid>, pwd >
说明: ssid>:字符串参数,接入点名称
pwd>:字符串参数,密码,最长64字节ASCII
响应:正确: OK
错误: ERROR
20、AT+CWJAP?
功能:检测是否真的连上该路线网络
指令: AT+CWJAP?
响应:返回当前选择的AP
- CWJAP:< ssid>
OK 说明: < ssid>:字符串参数,接入点名称 21、AT+CIFSR
功能:查看模块 IP 地址
指令: AT+CIFSR
响应:正确: + CIFSR:< IP address>
OK
错误: ERROR
说明: < ssid>:字符串参数,接入点名称
WIFI 8266实例
三种模式:
- STA(连接到外网,通过外网收发数据)
- AP(模块作为热点,其他设备连接模块的热点后进行收发数据)
- AP+STA
AP模式
首先上电,设置串口波特率115200,(按下res键)
在串口工具输入:AT ,返回OK说明模块启动成功
重启模块:AT+RST;响应:OK
设置模式:AT+CWMODE=2;响应:OK
设置后可输入AT+CWMODE?查询是否设置成功,不成功就重启模块即可
配置热点参数:AT+CWSAP=”名字”,”密码”,1(通道号),3(加密方式:0-OPEN,1-WEP,2-WPA_PSK,3-WPA2_PSK,4-WPA_WPA2_PSK)响应:OK
这时用手机打开WIFI就可以看到模块的热点,然后连接热点
查看接入设备:AT+CWLIF;响应:OK,即返回接入模块的设备的IP地址
如果没有ip地址,说明目前无设备连入。如果无线网络实际已连接上,请等待几分钟后再发送AT+CWLIF命令进行查询。
查询本机IP:AT+CIFSR;响应:本机IP OK
开启多连接模式:AT+CIPMUX=1(0:单路连接;1:多路连接);响应:OK
开启服务器模式:AT+CIPSERVER=1(0:关闭server模式,1:开启server模式),8080(端口号,缺省值为333);响应:OK
AT+ CIPMUX=1时才能开启服务器;关闭server模式需要重启。开启server后自动建立server监听,当有client接入会自动按顺序占用一个连接。
这时就可以用TCP调试助手连接模块进行通信了(这里IP地址和端口号选对就能正常通信,模式要选Server)
查看当前连接:AT+CIPSTATUS;响应:+ CIPSTATUS:< id>,< type>,< addr>,< port>,< tetype> OK
< id>:连接的id号0-4
< type>:字符串参数,类型TCP或UDP
< addr>:字符串参数,IP地址
< port>:端口号
< tetype>: 0-本模块做client的连接,1-本模块做server的连接
发送数据:AT+CIPSEND=1(ID号,通过上一条指令AT+CIPSTATUS得知),6(数据长度,最大长度为2048 )
1)单路连接时(+CIPMUX=0),指令为:AT+CIPSEND=< length>
2)多路连接时(+CIPMUX=1) ,指令为: AT+CIPSEND= < id>,< length>
响应:收到此命令后先换行返回”>”,然后开始接收串口数据
当数据长度满length时发送数据。
如果未建立连接或连接被断开,返回ERROR
如果数据发送成功,返回 SEND OK
此时连接已建立,可以进行数据的双向收发。
STA模式
模块作为客户端
首先要确保模块不处于服务器模式:AT+CIPSERVER=0
重启模块:AT+RST;响应:OK
设置模式:AT+CWMODE=1;响应:OK
查看当前无线路由器列表:AT+CWLAP;响应:返回可接入网络列表 OK
- CWLAP: < ecn>,< ssid>,< rssi>
错误返回:ERROR 此时请重新上电并严格按照AT命令再发送一遍。
说明:< ecn >:0-OPEN,1-WEP,2-WPA_PSK,3-WPA2_PSK,4-WPA_WPA2_PSK
加入当前无线网络:AT+CWJAP=”ssid”,”密码”;响应:OK,错误:ERROR
加入网络后可以检测下是否加入成功:AT+CWJAP?,返回已加入的网络的ssid,模块对已加入的网络具有记忆功能,即断电重连后仍默认连接上次加入的网络(这一点需要特别注意)
连接模式:AT+CIPMUX=(这时0,1都可以)响应:OK
建立TCP连接:AT+CIPSTART=id,”连接方式TCP/UDP”,”IP地址”,8080(端口号)响应:如果格式正确且连接成功,返回 OK,否则返回 ERROR
单路连接时(+CIPMUX=0),指令为:AT+CIPSTART= < type>,< addr>,< port>
多路连接时(+CIPMUX=1),指令为:AT+CIPSTART=< id>,< type>,< addr>,< port>
如果连接已经存在,返回 ALREAY CONNECT
< id>:0-4,连接的id号
< type>:字符串参数,表明连接类型,”TCP”-建立tcp连接,”UDP”-建立UDP连接
< addr>:字符串参数,远程服务器IP地址
< port>:远程服务器端口号
发数据(向建立TCP/UDP连接的主机发送数据):AT+CIPSEND,这条命令的详情就不再叙述
蓝牙AT指令
蓝牙与USB转串口模块连接方式,RXD-TX TXD-RX VCC-VCC GND-GND
要设置蓝牙AT指令,必须让AT引脚置高,然后接上蓝牙模块,当蓝牙模块state灯变为慢闪,则表明已经进入AT模式。(j将蓝牙模块与转串口模块对插,用跳线将AT对应的引脚接VCC)这时候将转串口模块接入电脑,打开超级终端或者串口调试助手便可以开始设置AT模式。
打开串口调试助手,测试AT指令,找到相应串口号后,注意两点,1、设置AT模式的波特率为38400 2、输入指令后加上回车后换行,发送后返回OK。(串口调试助手下载地址:http://www.arduino.cn/forum.php?mod=viewthread&tid=1183 )
下面来设置模块为从机模式,依次输入指令
AT+NAME=Bluetooth-Slave 蓝牙名称为Bluetooth-Slave
AT+ROLE=0 蓝牙模式为从模式
AT+CMODE=0 蓝牙连接模式为任意地址连接模式
AT+PSWD=1234 蓝牙配对密码为1234
AT+UART=9600,0,0 蓝牙通信串口波特率为9600,停止位1位,无校验位
AT+RMAAD 清空配对列表
相应返回OK表示设置成功。这个时候的蓝牙就可以与电脑主机或者手机配对通信。需要注意的是设置指令里的符号不要在中文状态下输入,否则不会返回相应指令。
用Arduino配置蓝牙AT指令
步骤一 给Arduino下载程序
#define AT 2
#define LED 13
void setup()
{
pinMode(LED,OUTPUT);
pinMode(AT,OUTPUT);
digitalWrite(AT,HIGH);
Serial.begin(38400);//这里应该和你的模块通信波特率一致
delay(100);
Serial.println("AT");
delay(100);
Serial.println("AT+NAME=OPENJUMPER-Bluetooth");//命名模块名
delay(100);
Serial.println("AT+ROLE=0");//设置主从模式:0从机,1主机
delay(100);
Serial.println("AT+PSWD=1234");//设置配对密码,如1234
delay(100);
Serial.println("AT+UART=9600,0,0");//设置波特率9600,停止位1,校验位无
delay(100);
Serial.println("AT+RMAAD");//清空配对列表
}
void loop()
{
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);
delay(500);
}
步骤二 蓝牙与Ardino连线 RXD-TX TXD-RX VCC-VCC GND-GND AT-2 (当很多传感器扩展板带有蓝牙模块接口,则可以直接将蓝牙插在扩展板上接口,不用麻烦接线)。
步骤三 按下Arduino的复位按键,让程序开始运行一次,当发现板载L灯500ms闪烁时则表明已设置成功。
两个蓝牙模块配对连接教程:
简单说 一个蓝牙设置为主机,一个蓝牙设置为从机,设置对应密码波特率AT指令后,自动连接配对。
第一步:准备好做主机的蓝牙模块,用cp2102转串口模块连接蓝牙并进入AT设置模式(指示灯慢闪) 分别输入下面AT指令 (注意输入指令后加上回车后换行,发送后返回OK表示设置成功,如下指令是一条一条输入,切勿所有一起输入再点发送。设置完成后可以通过AT指令类似AT+NAME?这样的指令查询刚刚设置是否成功,具体参考HC05AT指令集)
AT+NAME=Bluetooth-Master 蓝牙主机名称为Bluetooth-Master
AT+ROLE=1 蓝牙模式为主模式
AT+CMODE=1 蓝牙连接模式为任意地址连接模式
AT+PSWD=1234 蓝牙配对密码为1234
AT+UART=9600,0,0 蓝牙通信串口波特率为9600,停止位1位,无校验位
AT+RMAAD 清空配对列表
第二步:准备好做从机的蓝牙模块用cp2102转串口模块连接蓝牙并进入AT设置模式(指示灯慢闪)
分别输入下面AT指令 (注意输入指令后加上回车后换行,发送后返回OK表示设置成功)
(如果设置没有效果可以先恢复出厂设置AT+ORGL)
AT+NAME=Bluetooth-Slave 蓝牙名称为Bluetooth-Slave
AT+ROLE=0 蓝牙模式为从模式
AT+CMODE=1 蓝牙连接模式为任意地址连接模式
AT+PSWD=1234 蓝牙配对密码为1234
AT+UART=9600,0,0 蓝牙通信串口波特率为9600,停止位1位,无校验位
AT+RMAAD 清空配对列表
第三步:分别给主模块和从模块选择进入工作模式,并重新上电。两个模块会自动连接然后配对,这样后,状态灯会出现慢闪烁指示。
智能配网(Smartconfig)示例
方式1:ESP-Touch
1,AT+CWMODE_DEF=1 !!配置WiFi模组工作模式为单STA模式,并把配置保存在flash
2,AT+CWAUTOCONN=1 !!使能上电自动连接AP
3,AT+CWSTARTSMART=3 !!支持ESP-Touch和Airkiss智能配网
4,手机连上需要配网的AP,打开手机APP ESP-Touch 输入密码,点击确定,等待配网成功,见图1
5,AT+CWSTOPSMART !!无论配网是否成功,都需要释放快连所占的内存,见图2
6,AT+CIPSTATUS !!查询网络连接状态
方式2:Airkiss
1,AT+CWMODE_DEF=1 !!配置WiFi模组工作模式为单STA模式,并把配置保存在flash
2,AT+CWAUTOCONN=1 !!使能上电自动连接AP
3,AT+CWSTARTSMART=3 !!支持ESP-Touch和Airkiss智能配网
4,打开微信,关注微信公众号“安信可科技”,点击wifi配置,点击开始配置,输入密码,点击连接, 见图
5,AT+CWSTOPSMART !!无论配网是否成功,都需要释放快连所占的内存
6,AT+CIPSTATUS !!查询网络连接状态
参考
ESP8266_AT命令
HC05蓝牙模块_AT命令
配网_AT命令
联系方式
Any question connect me.
ccwanyuan2014@163.com
提issue
转载请注明
转载自chanjeff123.github.io
本站文章请勿直接转载,转载前请务必署名
最后编辑时间为:2019-06-30 13:53:30