ESP8266使用详解

Lua语言开发,感觉应该用lua

http://www.cnblogs.com/yangfengwu/category/1099910.html  (单独开发)

http://www.cnblogs.com/yangfengwu/category/1187355.html   (结合单片机)

这两天测试发现一个地方写错了

发送数据的地方

最近自己做51WIFI的开发板去官网看AT指令改了不少

需要说一下

链接:https://pan.baidu.com/s/10MxI8-Q33-M_R2WEHqEi1A 密码:j1sz

ESP8266使用详解

刷固件什么的参考自己别的文章哈,

亲们可以自己下载下来看一下

 

ESP8266使用详解

还发现,自己用串口模块的3.3V给模块供电模块不能工作,,所以自己直接接的串口模块的5V

模块就工作了,一启动模块确实需要一定的电流才能启动.

用的这款

 ESP8266使用详解

各引脚功能:来至厂家提供的资料

ESP8266使用详解

GPIO0 默认是工作模式(不接线)。如果接了低电平就是下载模式(给模块刷固件!!),所以可以不接线,当然也可以接高电平。

反正一开始连接的时候CH_PD必须为高电平。其余的可以不接。

如果电脑的wifi上显示了你的wifi信号说明模块已经工作。

注意默认的波特率是115200!!!!!!设置好串口调试助手的波特率,再贴张图片吧防止亲们忘。

 ESP8266使用详解

记得输入各种AT指令,勾选上“发送新行”些内部信息)然后输出READY!代表系统正

系统启动后,系统会输出一堆乱码(其实不是乱码,系统启动后输出一常

对于后面的操作--先提个醒,如果连接wifi出现连接不上的问题,可以发送AT+RESTORE 恢复出厂设置或刷固件

先看秦时明月;;;;;;终于做好了,android客服端软件

,(记得加权限,网络,和wifi。说给自己听的)

来谈谈EPS8266的AT指令

先说一下EPS8266模快的两(三)种工作模式:Station 模式,AP 模式和AP 兼 Station 模式;有玩过路由器的应该知道路由器除了正常使用(AP模式)外,还可以接收其他路由器的信号(Station 模式),然后再发出来(AP 兼 Station 模式)。这两(三)种工作模式各怎样用呢!

先说一下AP模式下的通信:就设置他的模式为AP模式(就相当于普通路由器)

AT+CWMODE=?    响应返回当前可支持哪些模式

AT+CWMODE?     响应当前处于哪种模式

AT+CWMODE=2   1-Station 模式,2-AP 模式,3-AP 兼 Station 模式

步骤1 发送AT+CWMODE=2设置为AP 模式

 ESP8266使用详解

这种模式下模块发出无线wifi信号。用电脑连接它

 ESP8266使用详解

步骤发送AT+RST  重启模块使AT+CWMODE=2模式生效

 ESP8266使用详解

步骤发送AT+CIPMUX=1 启动多连接

 ESP8266使用详解

 ESP8266使用详解

 

为什么要启动多路连接模式,意思是允许多个客户端连接,当然模块最多允许5个客户端连接(每个客户端对应一个id号,0--4)。也是必须设定的,不然配置为服务器会出错

接着就是怎样与它通信。当然是网络通信,也就是TCP/UDP通信两种。{UDP--分为发送端和接收端,面向无连接的通信(速度快),只向指定的ip(每一台电脑都有自己的ip地址,向指定的ip地址发数据,数据就发送到了指定的电脑)端口(我把数据发送到电脑了,电脑中的哪个程序接收呢。不知道亲们知不知道,其实每一个网络软件都有自己的通信端口,像qq,酷狗音乐的下载端口等等。现在知道了吧,向指定的ip地址和指定的端口发数据,才能发送到指定的电脑的指定的程序上)不管你接没接收到,只管发}

{TCP--分为服务器和客户端,与udp不同的是双方建立正常的连接后,才能通信,每次通信都会检测连接正不正常,(通信可靠,速度比udp慢)}

模块作为服务器

步骤发送AT+CIPSERVER=1,8080开启服务器模式,端口号8080

 ESP8266使用详解

 ESP8266使用详解

打开电脑的网络调试助手(别忘了连接它的无线网)

 ESP8266使用详解

 ESP8266使用详解

对了远程主机地址为什么是192.168.4.1

你可以发送AT+CIFSR指令查看一下模块的自身ip地址

 ESP8266使用详解

 ESP8266使用详解

点击连接

 

 ESP8266使用详解

 ESP8266使用详解

接着我用我的手机客户端再连接(手机连接上它的无线网)

 ESP8266使用详解

 ESP8266使用详解

接着就是发信息(客户端发给服务器)

 

 ESP8266使用详解

 

接着就是发信息(服务器发给客户端)

 ESP8266使用详解

 

去掉发送新行点击发送

 ESP8266使用详解

客户端接收

 ESP8266使用详解

如果往手机上发

 ESP8266使用详解

 

模块作为客户端,PC作为服务器,最有意思的来了

模块作为客户端咱从头再来,

1,还是设置模块的工作模式为ap模式AT+CWMODE=2

2,复位一下AT+RST

3发送AT+CIPMUX=0 启动单连接,先弄单连接后弄多连接,多连接比较有意思,想知道就慢慢的往下看

4AT+CIPSTART="TCP","192.168.4.2",8080

TCP说明是tcp连接,如果写udp就是udp连接

192.168.4.2连接的ip地址,电脑的ip,端口号8080

 ESP8266使用详解

 

 ESP8266使用详解

 

 ESP8266使用详解

接着就可以通信了

单路连接时发送指令为AT+CIPSEND=x , x为发送的字节数

(想起一个词,多退少补,,,,,,)

 ESP8266使用详解

 

看多路连接(首先提醒一下一个模块可以做到四路连接)

1,还是设置模块的工作模式为ap模式AT+CWMODE=2

2,复位一下AT+RST

3发送AT+CIPMUX=1 启动多连接

4AT+CIPSTART=0,"TCP","192.168.4.2",8080

5,  AT+CIPSEND=0,20

6,去掉回车随便打些东西

7,发送

 ESP8266使用详解

 ESP8266使用详解

接着再发送

AT+CIPSTART=1,"TCP","192.168.4.2",8080

AT+CIPSTART=2,"TCP","192.168.4.2",8080

AT+CIPSTART=3,"TCP","192.168.4.2",8080

AT+CIPSTART=4,"TCP","192.168.4.2",8080

都连接上了!!!!!!

 ESP8266使用详解

 

5,  AT+CIPSEND=1,20

6,去掉回车随便打些东西

7,发送

 

5,  AT+CIPSEND=2,20

6,去掉回车随便打些东西

7,发送

 

5,  AT+CIPSEND=3,20

6,去掉回车随便打些东西

7,发送

5,  AT+CIPSEND=4,20

6,去掉回车随便打些东西

7,发送

 ESP8266使用详解

 ESP8266使用详解

再用网络调试助手给模块发信息试一试

 ESP8266使用详解

好了AP模式就讲这么多,该Station 模式了

Station模式与AP模式不同在于,Station模式需要让模块连接上家里的路由器的wifi。其余的都一样吧!

就让模块在Station模式下做服务器,然后与电脑通信(要在一个wifi下,电脑和模块连接同一个wifi信号)

1,发送AT+CWMODE=1设置为Station模式

2,AT+RST  重启生效

3,连接家里的路由AT+CWJAP="TP-LINK_A52","1234567890"

 ESP8266使用详解

 ESP8266使用详解

对了发送AT+CWLAP可以查询周围的wifi信号

对了发送AT+CWJAP可以看一看wifi是否真的连接上

4AT+CIPMUX=1  启动多连接

5AT+CIPSERVER=1,8080  打开服务器端口为8080

6AT+CIFSR  看一下你模块现在分得的ip是多少,因为只要模块连网就会重新分配ip地址。这也是网络助手里面远程主机栏要填写的ip地址

 ESP8266使用详解

 ESP8266使用详解

 ESP8266使用详解

通信啥的就不多说了。

用模块做客户端

1 连接路由器AT+CWJAP="TP-LINK_A52","1234567890"

2  AT+CIPMUX=0 单连接

3  AT+CIPSTART="TCP","192.168.1.101",8080

后面就是发送数据,如果出现一直连接不上关闭电脑防火墙

 ESP8266使用详解

 ESP8266使用详解

 

多连接就不演示了,

AT+CIPSTART=0,"TCP","192.168.1.101",8080或

AT+CIPSTART=1,"TCP","192.168.1.101",8080或

AT+CIPSTART=2,"TCP","192.168.1.101",8080或

AT+CIPSTART=3,"TCP","192.168.1.101",8080或

AT+CIPSTART=4,"TCP","192.168.1.101",8080或

发送数据

AT+CIPSEND=0,20或

AT+CIPSEND=1,20或

AT+CIPSEND=2,20或

AT+CIPSEND=3,20或

AT+CIPSEND=4,20

应该差不多了。。。。。。。。。。。。

 

如果想用Lua脚本语言开发请看这篇,,不需要单片机发AT指令配置了

ESP8266使用详解--基于Lua脚本语言

 

自己用LUA+单片机+上位机做了一个轻松配置8266的板子

轻松使用8266

轻松使用ESP8266

补充

注意只有在单连接的时候才可以设置为透传模式--就是串口的数据直接发送到网络,网络的数据直接发送到串口

测试UDP单连接

ESP8266使用详解

 

 可以参考这篇文章

https://wenku.baidu.com/view/70ee8ebff7ec4afe05a1df1b.html?qq-pf-to=pcqq.c2c

也可以看这个文章,好文章就应该分享出来

链接:http://pan.baidu.com/s/1pLuS2T1%20密码:iaw4

 当然如果自己的模块不可以,,可能是固件的问题,可以重新刷这个固件

 链接:http://pan.baidu.com/s/1o78l4zo 密码:btrh

 

上一篇:android之WIFI小车编程详述


下一篇:12-51单片机ESP8266学习-AT指令(ESP8266连接路由器,建立TCP服务器,分别和C#TCP客户端和AndroidTCP客户端通信+花生壳远程通信)