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

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

http://www.cnblogs.com/yangfengwu/

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

发送数据的地方

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

需要说一下

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

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

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

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

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

用的这款

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

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

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

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

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

记得输入各种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 模式

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

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

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

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

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

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

模块作为服务器

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

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

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

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

点击连接

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

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

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

去掉发送新行点击发送

客户端接收

如果往手机上发

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

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

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

2,复位一下AT+RST

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

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

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

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

接着就可以通信了

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

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

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

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

2,复位一下AT+RST

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

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

5,  AT+CIPSEND=0,20

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

7,发送

接着再发送

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

都连接上了!!!!!!

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,发送

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

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

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

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

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

2,AT+RST  重启生效

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

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

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

4,AT+CIPMUX=1  启动多连接

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

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

通信啥的就不多说了。

用模块做客户端

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

2  AT+CIPMUX=0 单连接

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

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

多连接就不演示了,

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单连接

可以参考这篇文章

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏皮振伟的专栏

[linux][memory]进程的最大内存使用量的讨论

前言: 一个进程最大能使用多少虚拟内存,能控制的地方还是比想象的多一点。 尤其是IaaS上,一个qemu进程能使用多少虚拟内存,就是对应着虚拟机的物理内存的最大...

2.8K110
来自专栏黑泽君的专栏

day07_Tomcat服务器与http学习笔记

    WEB,在英语中web即表示网页的意思,它用于表示Internet主机上(服务器)供外界访问的资源。

13810
来自专栏Java编程技术

Java网络编程基础篇

网络通讯在系统交互中是必不可少的一部分,无论是面试还是工作中都是绕不过去的一部分,本节我们来谈谈Java网络编程中的一些知识,本chat内容如下:

58110
来自专栏PHP在线

Apache的httpd.conf文件配置详解

Apache的基本设置主要交由httpd.conf来设定管理,我们要修改Apache的相关设定,主要还是通过修改httpd.cong来实现。下面让我们来看看ht...

63880
来自专栏腾讯移动品质中心TMQ的专栏

像 google 一样测试系列之六: 实战篇

本文主要介绍 google 一样测试系列的实战内容,Mock 和反射执行,会穿插在各章节中,因此不单独成节了。

18510
来自专栏Java编程技术

Druid连接池原理学习

(1)、 如果设置了maxWait或者构造函数参数传入的为true,则创建的ReentrantLock为公平锁,否者为非公平锁 (2)、 如果设置了initi...

2.4K20
来自专栏白驹过隙

Socket编程回顾,一个最简单服务器程序

23730
来自专栏漫漫前端路

前端安全知识

xss: 跨站脚本攻击(Cross Site Scripting)是最常见和基本的攻击 WEB 网站方法,攻击者通过注入非法的 html 标签或者 javasc...

12620
来自专栏Python专栏

用python来更改小伙伴的windows开机密码,不给10块不给开机

30060
来自专栏互扯程序

Linux常用Shell脚本,值得学习及收藏

在运维中,尤其是linux运维,都知道脚本的重要性,脚本会让我们的 运维事半功倍,所以学会写脚本是我们每个linux运维必须学会的一门功课,这里收藏linux运...

30210

扫码关注云+社区

领取腾讯云代金券