[转]ESP8266使用详解
本文转自:yangfengwu
原文地址:http://www.cnblogs.com/yangfengwu/p/5205570.html
这两天测试发现一个地方写错了
发送数据的地方

还发现,自己用串口模块的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
应该差不多了。。。。。。。。。。。。
[转]ESP8266使用详解的更多相关文章
- ESP8266使用详解(AT,LUA,SDK)
https://www.cnblogs.com/yangfengwu/p/10100152.html 8266综合开发教程(LUA) https://www.cnblogs.c ...
- ESP8266使用详解--基于Lua脚本语言
这些天,,,,今天终于看到了希望,,,天道酬勤 先说实现的功能...让ESP8266连接无线网,然后让它建立服务器,,我的客户端连接上以后,发给客户端发数据模块打印到串口,,往ESP8266串口里发数 ...
- ESP8266使用详解
[From] http://www.cnblogs.com/yangfengwu/p/5205570.html 用的这款 各引脚功能:来至厂家提供的资料 GPIO0 默认是工作模式(不接线).如果接了 ...
- Linq之旅:Linq入门详解(Linq to Objects)
示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集 ...
- 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)
一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...
- EntityFramework Core 1.1 Add、Attach、Update、Remove方法如何高效使用详解
前言 我比较喜欢安静,大概和我喜欢研究和琢磨技术原因相关吧,刚好到了元旦节,这几天可以好好学习下EF Core,同时在项目当中用到EF Core,借此机会给予比较深入的理解,这里我们只讲解和EF 6. ...
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- Android Notification 详解(一)——基本操作
Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...
- Android Notification 详解——基本操作
Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...
随机推荐
- 【Android】OAuth验证和新浪微博的oauth实现
关于OAuth验证 OAuth是当下流行的授权方案,twitter,facebook,google等大型网站的开放平台都支持了oauth验证模式,国内的新浪微博.腾讯微博.163微博的开放平台也相继支 ...
- 说说Python程序的执行过程
1. Python是一门解释型语言? 我初学Python时,听到的关于Python的第一句话就是,Python是一门解释性语言,我就这样一直相信下去,直到发现了*.pyc文件的存在.如果是解释型语言, ...
- 透過手機 App 在 OpenELEC(XBMC)中輸入中文
這裡介紹如何使用手機 App 在沒有中文輸入法的 OpenELEC(XBMC)中輸入中文字. OpenELEC(XBMC)雖然有內建中文語系,但是卻沒有中文的輸入法,沒辦法直接輸入中文字,這對於一般家 ...
- vue如何在路由跳转的时候更新组件
项目中在路由跳转的时候碰到一个问题,没有更新视图,如何解决呢: https://segmentfault.com/a/1190000008879966 http://www.tuicool.com/a ...
- Zookeeper session超时
1.会话概述 在ZooKeeper中,客户端和服务端建立连接后,会话随之建立,生成一个全局唯一的会话ID(Session ID).服务器和客户端之间维持的是一个长连接,在SESSION_TIMEOUT ...
- FreeRTOS 事件标志组 ——提高篇
假设你已经看过FreeRTOS 事件标志组这篇随笔了. 之前的基础篇,真的就只是简单了解一下,相当于大学实验室的实验,但是,我们实际公司项目中,需要更多地思考,就算我们之前只是学习了基础概念以及基础语 ...
- poj2965(位运算压缩+bfs+记忆路径)
题意:有个4*4的开关,里面有着16个小开关 -+-- ---- ---- '+'表示开关是关着的,'-'表示开关是开着的,只有所有的开关全被打开,总开关才会被打开.现在有一种操作,只要改变某个开关, ...
- Pyperclip – A cross-platform clipboard module for Python
Usage is simple: import pyperclip pyperclip.copy('The text to be copied to the clipboard.') spam = p ...
- 1. K近邻算法(KNN)
1. K近邻算法(KNN) 2. KNN和KdTree算法实现 1. 前言 K近邻法(k-nearest neighbors,KNN)是一种很基本的机器学习方法了,在我们平常的生活中也会不自主的应用, ...
- ARKit从入门到精通(4)-ARKit全框架API大全
转载:http://blog.csdn.net/u013263917/article/details/73156679 1.1-ARKit框架简介 1.2-ARAnchor 1.3-ARCamera ...