http://blog.csdn.net/csdnhuaong
ESP8266 使用小结
ESP8266 系列的 Wifi 模块为串口或 TTL 电平转 WIFI 通信的一种传输转换模块,内
置无线网络协议 IEEE802.11b/g/n 协议栈以及 TCP/IP 协议栈,能够实现用户串
口或 TTL 电平数据到无线网络之间的转换
ESP8266 是一款相对廉价的 wifi 模块。
1. 不仅提供 AT 指令操作,这样就可以使用 C51/STM32/Arduino 等各种
具有串口的微控制器进行控制,实现互联网数据交互。
2. 安信可提供自己 SDK、串口烧写固件的工具,这样可以自己编写片内
程序,直接把逻辑写进代码,烧到固件里,就能按我们的业务执行了,不需要
外置 C51/STM32/Arduino 之类的控制器。
3. 模块内置 ESP32,可以刷 nodemcu 固件,直接使用 lua 语言进行编
程,降低开发门槛
4. 模块有 GPIO/SPI/IIC/PWM/ADC/UART 接口,自身可以实现一定的功
能
5.
ESP8266 有多重封装和型号,可以满足不同开发需求
所以这样就为我的 ESP8266 的学习指明了方向:
1. 使用串口调试助手,用 AT 指令实现模块与模块、模块与手机/PC 通信
2. 使用 STM32 微控制器搭载模块,实现与其他模块、手机、PC 的通信
3. 刷写固件,抛开控制器,直接用模块实现自己的业务
http://blog.csdn.net/csdnhuaong
ESP8266 的工作模式:STA、AP、STA+AP 三种工作模式
STA 模式:此时 ESP8266 模块是终端,可连接室内路由、手机热点或者 AP 热点
模块连接 AP 热点,可与其进行双向数据通信
模块连接手机热点,可与手机上网络调试助手通信
模块连接路由器,可以在当前网络下的 PC 或者手机的网络调试助手通信
也可以通过路由接入互联网,从而手机或电脑通过互联网实现对设备的远程控制
AP 模式: ESP8266 的默认模式,此时模块作为热点,实现手机的直接连接、STA
模块的直接连接。或电脑直接与模块通信,实
现局域网无线控制。
STA+AP 模式:两种模式的共存模式,( STA 模式) 即可以通过路由器连接到互
联网,并通过互联网控制设备;( AP 模式)也可作为 wifi 热点,其他 wifi 设
备连接到模块。这样实现局域网和广域网的无缝切换,方便操作。
一.调试工具
模块:ESP8266-01 、 ESP8266-12F
连接:ESP8266—串口—串口转 TTL 模块———
手机软件&上位机 网络调试助手,串口调试助手
二.WiFi 设置的常用 AT 指令
测试类:
指令
AT
AT+RST
功能
使用
测试指令
重启指令
可以测模块好坏,连线是否正确
AT+RESTORE
恢复出厂设置
要是配置乱了的话,重置
查看类:
指令
功能
使用
http://blog.csdn.net/csdnhuaong
AT+
?
AT+=?
AT+
AT+CWLAP
AT+CWLIF
AT+CIPAP
AT+CIPSTA
AT+CIFSR
查询指令
测试指令
执行指令
可以查看当前该指令的设置参数
查看当前设置的范围
查看当前可搜索的热点 WIFI 探针(STA 下使用)
查看已接入设备 IP,MAC
(AP 模式下用)
查看 AP 的 IP 地址
AT+CIPAP="192.168.4.1"
查看 STA 的 IP 地址
AT+CIPSTA="192.168.4.2"
查看当前连接的 IP
(执行)
AT+CIPSTATUS
获得当前连接状态
AT+CIPSTATUS?,或者执行
设置类:
1. 基本设置
指令
功能
使用
AT+UART
串口配置
AT+UART=115200,8,1,0,0
AT+CWMODE
AT+CIPMODE
基本模式配置
[1Sta : 2AP : 3Sta+AP]
设置透传模式
0 非透传:1 透传
AT+CIPMUX=0|1
设置单|多路连接
0 单连接 :1 多连接
AT+CIPSTART
建立 TCP/UDP 连接
AT+CIPSTART=,,,
2. 模式设置
指令
AP 功能
使用
http://blog.csdn.net/csdnhuaong
AT+CWMODE=2
开启 AP 模式
配置模式要重启后才可用,AT+RST
AT+CWSAP
配置 AP 模式下的参数 AT+CWSAP="ESP8266","TJUT2017",6,4
AT+CIPMUX=1
设置多连接
因为只有多连接才能开启服务器
AT+CIPSERVER=1,8086 设置 Server 端口
指令
STA 功能
使用
AT+CWMODE=1
开启 STA 模式
配置模式要重启后才可用 AT+RST
AT+CWJAP
当前 STA 加入 AP 热
点
AT+CWJAP=”ESP8266”,”TJUT2017”
AT+CIPMUX=0
打开单连接
//AT+CIPMODE=1
透传模式
AT+CIPSTART
AP+CIPSEND
建立 TCP 连接
开始传输
AT+SAVETRANSLINK
开机后自动连接
AT+CWAUTOCONN
设置 STA 开机自动连
接
AT+CIPSTART
="TCP","192.168.4.1",8086
AT+SAVETRANSLINK
=1,"192.168.4.1",8086,"TCP"
AT+CWAUTOCONN=1
三.调试模式
TCP Server 与 TCP Client 通信模式 必须在同一个网络下
TCP Server 作为服务器 有一个 IP 地址,和一个服务端口(大于 1000)
TCP Client 作为客户端 有本地 IP 地址,和本地端口
1) 先配置 TCP Server 的 IP 和端口号
http://blog.csdn.net/csdnhuaong
2) TCP Client 客户端 连接到 Server 和服务端口,建立连接后可互发数据
ESP8266 模块可以选择在 AP 模式开启 TCP Server
在 SAT 模式开启 TCP Server 或者 TCP Client
模块 ap 模式下做 tcp serve
AT+CWMODE=2 开启 AP 模式
AT+CWSAP="ESP8266","TJUT2017",5,4 设置模块的 wifi 和密码
AT+CIPMUX=1 打开多连接
AT+CIPSERVER=1,8866 设置模块服务器端口
模块默认的 IP 是 192.168.4.1 可通过 AT+CIPAP 查看
手机端/电脑端/或者模块 作为 TCP Client 连接这个热点(ServerIP,Server 端口)
这样 Client 就可以发送数据到 Server Server 端串口就会反馈会字串数据
Server 向 Client 传数据 先指定字长再发数据 AT+CIPSEND=0,5 12345
四.使用 tips
要是不确定模块工作在什么模式 使用 AT+RESTORE 恢复出厂设置
使用串口发送 1)波特率要匹配[默认 115200]
使用串口发送 2)要在结尾发送新行,无论是调试,还是程序都要有
在 P2P 的透传模式下 TCP Sever 与 TCP Client 是不会断开连接的,非透传
模式下,如果一定时间没有数据传输,系统会自动断开连接的,需从新
建立 TCP 连接