注意事项:
1、ESP8266 上电没有反应:检查CH_PD是否连接(相当于片选,高电平工作)。
指令表:
-
重启模块:AT+RST
-
选择WiFi应用模式:AT+CWMODE = <mode>
-
列出当前可用接入点:AT+CWLAP
-
加入接入点:AT+CWJAP=<ssid>,<pwd>
-
退出接入点:AT+CWQAP
-
设置AP模式下的参数:AT+CWSAP=<ssid>,<pwd>,<chl>, <ecn>
-
建立TCP/UDP连接:
-
单 路 连 接 (+CIPMUX=0)时:AT+CIPSTART=<type>,<addr>,<port>
-
多路连接(+CIPMUX=1)时: AT+CIPSTART=<id>,<type>,<addr>,<port>
-
-
获得TCP/UDP连接状态:AT+CIPSTATUS
-
启动多连接:AT+CIPMUX=<mode>
-
发送数据:
-
单 路 连 接 (+CIPMUX=0)时:AT+CIPSEND=<length>
-
多路连接(+CIPMUX=1)时:AT+CIPSEND=<id>,<length>
-
-
关闭TCP/UDP连接:AT+CIPCLOSE
-
获取本地IP地址:AT+CIFSR
注意:在执行服务改变后应该调用重启后重新设置。
测试连接
// 电脑开热点,连接电脑热点交互
AT+CWMODE=3 // 模式设置
AT+CWJAP="xyz","qazwsxedc" // 连接我手机开的热点,电脑也连这个
AT+CIFSR // 获取ip地址
AT+CIPSTART="TCP","192.168.109.149",8080 // 电脑上用调试工具开的TCP服务器8080端口
AT+CIPSEND=12 // 发送消息命令,参数为消息字节长度
网络调试组手 // 发送消息内容
创建服务
// 芯片开热点,连接芯片热点交互
AT+CWMODE=2 // 设置模式为2,只开热点,1是客户端,3是都开
AT+CIFSR // 查询自己的ip
AT+CWSAP="Echo","88888888",3,4 // 开启热点,热点名、密码、通道号、安全级别
AT+CIPMUX=1 // 0单路连接模式,1多路连接模式
AT+CIPSERVER=1,8888 // 开启服务端口,端口号8888(不设的话为333)
AT+CWLIF // 获取客户端ip
AT+CIPSEND=0,12 // 有客户端连接后会自动打印:0,CONNECT,第一个参数需要用到这个id
好的吧难受了 // 客户端断开会打印:0,CLOSED
运行结果如下(这个工具是我C#做的,参考地址:C# 通过Com端口和单片机通讯(232/485/USB)_花开莫与流年错_的博客-CSDN博客_c#与单片机通信)
命令说明
命令
AT | 测试AT启动 |
AT+RST | 重启模块 |
AT+GMR | 查看版本信息 |
AT+CWMODE= | :1、station模式(终端);2、ap模式(热点);3、ap+station模式 |
AT+CWJAP=, | 加入接入点,id、密码 |
AT+CWQAP | 退出接入点 |
AT+CWSAP=,,, | 在ap热点模式下才有效 ssid字符串参数,接入点名称 pwd字符串参数,密码(最长64字节) chl通道号 0 OPEN 1 WEP 2 WPA_PSK 3 WPA2_PSK 4 WPA_WPA2_PSK |
AT+CWLIF | 查看已接入设备的IP |
TCP、IP指令
1、AT+CIPSTATUS:获得连接状态
2、AT+CIPSTART:建立TCP 连接或注册UDP 端口号
3、AT+CIPSEND:发送数据
4、AT+CIPCLOSE:关闭TCP 或UDP
5、AT+CIFSR:获取本地IP 地址
6、AT+CIPMUX:启动多连接
7、AT+CIPSERVER:配置为服务器
8、AT+CIPMOD:设置模块传输模式
9、AT+CIPSTO:设置服务器超时时间
其他指令
1、+IPD:接收到网络数据
2、AT+CIOBAUD:设置波特率