欢迎光临
我们一直在努力

ESP8266-01无线模块兼容Arduino

Open-Live-Writer99dbc1c67383_14E1A082611n9347b2aw41b49d4_thumb

本产品购买链接:点我购买

==产品概述==
ESP8266是一款超低功耗的UART-WiFi 透传模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和物联网应用设计,可将用户的物理设备连接到Wi-Fi无线网络上,进行互联网或局域网通信,实现联网功能。ESP8266封装方式多样,天线可支持板载PCB天线,IPEX接口和邮票孔接口三种形式;ESP8266可广泛应用于智能电网、智能交通、智能家具、手持设备、工业控制等领域。
==规格参数==
*支持无线802.11 b/g/n 标准
*支持STA/AP/STA+AP 三种工作模式
*内置TCP/IP协议栈,支持多路TCP Client连接
*支持丰富的Socket AT指令
*支持UART/GPIO数据通信接口
*支持Smart Link 智能联网功能
*支持远程固件升级(OTA)
*内置32位MCU,可兼作应用处理器
*超低能耗,适合电池供电应用
*3.3V 单电源供电
==接口定义==

ESP82661

Open-Live-Writer99dbc1c67383_14E1A082611ty77d7r4mc91bb1m_thumb

==主要功能==
ESP8266可以实现的主要功能包括:串口透传,PWM 调控,GPIO控制。
*串口透传:数据传输,传输的可靠性好,最大的传输速率为:460800bps。
*PWM 调控:灯光调节,三色LED 调节,电机调速等。
*GPIO控制:控制开关,继电器等。
==工作模式==
ESP8266模块支持STA/AP/STA+AP 三种工作模式。
*STA 模式:ESP8266模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的远程控制。
*AP 模式:ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。
*STA+AP 模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。

透传模式:通过AT指令设置并保存透传模式(详见AT指令集),使ESP8266上电自动从串口收发数据。
==应用领域==
#串口CH340 转Wi-Fi;
#工业透传DTU;
#Wi-Fi 远程监控/控制;
#玩具领域;
#色LED 控制;
#消防、安防智能一体化管理;
#智能卡终端,无线POS 机,Wi-Fi 摄像头,手持设备等。
==AiCloud==
#AiCloud为安信可科技(Ai-Thinker)推出的互联网云平台服务。用户可以在平台上对设备进行监控和管理,实现大数据管理和分析,使设备真正实现智能化。
#AiCloud可将打包全套的服务器解决方案,为客户省去成本,加快开发进度。
#AiCloud可接受客户的定制化需求,Web 页面配置,Android/iOS 平台App均可支持。

AT指令设置:请不要在中文输入状态下输入AT指令,请勿直接复制粘贴AT指令。AT指令全部为大写字母(不支持小写),符号为半角输入状态。发送AT指令后,反馈为ERROR表示发送失败,请务必检查AT指令格式。

通过AT指令模式对ESP8266的设置(USB-TTL):

===接线方法===

*VCC—-3.3
*GND–GND
*CH_PD–3.3
*GPIO0–GND(烧录固件时连接,不烧录时为空)
*RX–TX
*TX–RX
*注意:如果USB转TTL(PL2303)模块不是我司购买的,3.3V供电需要独立供电,非我司出品的USB转TTL上的板载3.3V是无法驱动模块的,电流不够。如果您使用笔记本电脑的话,注意部分笔记本设置的是非标准的USB接口,会导致模块串口无法识别、无反应,建议独立供电或者使用台式机电脑USB接口。
串口调试软件调整好参数,设备连接成功的话会出现一堆乱码和ready

Open-Live-Writer99dbc1c67383_14E1ATB2MlYLtXXXXXaIXpXXXXXXXXXX_14857792_thumb

按照上述连接好设备后,下面就可以进行AT设置。

==手机连接ESP8266无线模块(AP模式下AT指令设置及说明)==

将连接好的USB-TTL和ESP8266插在电脑上的USB端口上,随后打开电脑的设备管理器(WINDOWS控制面板—系统–管理—设备管理器)看到如下界面:

shebei1

接下来就可以打开串口调试软件SSCOM42,并按照图中的设置(文章下方的固件工具集里有),如下图:

chuankou1_副本

注:如您使用其他串口调试软件,须在填写好AT指令后,按下回车键,再点击发送按钮,否则无法发送!

按照图中的设置后,接下来就可以进行AT指令的设置。(建议手动输入AT指令,直接复制可能会导致格式错误,请不要在中文输入方式下输入AT指令)

第一步:发送AT+RST(执行指令)

指令:AT+RST

反馈:OK

说明:刚上电可以不发送该指令,有些厂家生产的ESP8266模块,无法即时重启复位,导致串口无响应,如已发送,则重新开关串口按钮即可。

第二步:发送AT+CWMODE=3或AT+CWMODE=2(设置指令)

指令:AT+CWMODE=<MODE>

说明:<MODE>:1为Station模式,2为AP模式,3为Station兼AP模式

反馈:OK

image

说明:如死机,则发送AT+RST

第三步:发送AT+CWSAP=”zhongbest”,”12345678”,1,3(设置指令)

指令:AT+CWSAP=<ssid>,<pwd>,<chl>,<ecn>

说明:该指令只有在AP模式开启后有效

<ssid>:字符串参数,ESP8266WIFI名字

<pwd>:字符串参数,WIFI密码,最长64字节,ASCII

<chl>:通信号,你的接入设备数量

<ecn>:0为开放式,1-WEP,2-WPA-PSK,3-WPA2_PSK,—-就是跟你家设置无线路由器方法一样的,只是这里直接写在指令里。

反馈:OK

image

第四步:打开手机的无线网络,找到无线名称为“zhongbest”的WIFI信号,用手机连接,并输入您之前设置的WIFI密码。如下图:

A2F0A11A24F3C4FA72B9B5D1D6765C82

第五步:连接上ESP8266的WIFI后,在串口调试软件中发送AT+CWLIF(执行指令)

指令:AT+CWLIF

说明:查看已接入设备的IP地址,例如:手机、电脑等。

响应:<IP addr>

反馈: OK

image

说明:最好拿个笔记下来,不然老要忘。

如果反馈为:

image

说明:表示没有设备连接ESP8266的WIFI,您确实连接上了,可以重新发送指令,看是否有反馈IP地址。

第六步:发送AT+CIFSR(执行指令)

指令:AT+CIFSR

说明:查看ESP8266模块的IP地址

响应:<IP addr>

反馈:OK

image

第七步:发送AT+CIPMUX=1(设置指令)

指令:AT+CIPMUX=<mode>

说明:<mode>为连接模式,0为单路连接模式,1为多路连接模式

反馈:OK

image

查询方式:发送AT+CIPMUX?

响应:+CIPMUX:1

反馈:OK

image

说明:多路连接模式已经打开了。

第八步:发送AT+CIPSERVER=1,8080(设置指令)

指令:AT+CIPSERVER=<mode>[,<port>]

说明:<mode>,0为SERVER关闭模式,1位开启SERVER模式

<port>,为端口号,缺省值为333

反馈:OK

image

第九步:安卓手机上安装网络调试软件(安卓应用市场里很多,这里放一个我用的):http://pan.baidu.com/s/1pKUktrP   (此外,苹果手机可以去下载个叫通讯调试器的软件,也可以进行设置,只不过只能以16进制数发送信息),安装好后,打开软件,选择tcp Client模式,看到如下图片:

619D9EC9BC0D0985FA8871D0753F1E9D

第十步:点击图中的增加按钮,进行IP地址和端口号的设置(之前查询ESP8266的IP及设置的端口号),输入完成后,点击增加,增加成功后自动连接,如下二张图:

8FF2931D4D8962CE7AB287CC91A28204

10DAE01BC3270EA1D4C4786FC6421604

第十一步:在网络调试软件的发送框内输入所要发送的内容,随后点击发送。如下图:

C0004C4E1D39DFCA1D883405A1F2BD1F

第十二步:电脑上查看你的串口调试软件,是否收到你从手机上发送的内容,如下图:

33520116165148919

==程序效果==

通过手机控制ESP8266,ESP8266相当于一个WIFI热点,接收其他设备发送的信息。

==注意事项==

1、手机如果锁屏后,就会断开连接,解锁后,软件会重新连接。

2、最新的AT指令集,集成了AT指令保存到FLASH。部分AT指令需要手动保存AT指令到FLASH,详见AT指令集。

3、发送指令不要太快,有时候一条接一条连续发会导致ESP8266反馈错误,期间最好停顿1秒再发送。

方法二:ESP8266+Arduino串口连接方式 (进入AT模式)

==使用方法==

ESP8266 和Arduino UNO:

VCC—-3.3v

GND—GND

CH_PD—3.3v(建议独立供电3.3V ,否则有可能因供电不足) 不要接5V!!!

TXD—–PIN10

RXD—–PIN11

==接线方式==

ESP8266 arduino_bb

==例子程序==


#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX

void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(115200);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
Serial.println("Goodnight moon!");

// set the data rate for the SoftwareSerial port
mySerial.begin(115200);
mySerial.println("Hello, world?");
}

void loop() // run over and over
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}

==注意事项==

SoftwareSerial库的说明:

库有以下已知的限制:

如果同时使用多个软件串口,同一时间只有一个可以接收数据。

不是所有的引脚都可以定义成软串口使用

Arduino Mega和Mega2560支持引脚:10, 11, 12, 13, 14, 15, 50, 51, 52, 53, A8 (62), A9 (63), A10 (64), A11 (65), A12 (66), A13 (67), A14 (68), A15 (69).

Arduino Leonardo and Micro支持引脚: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).

Arduino Pro Micro支持引脚: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI),18(A0),19(A1)

Arduino或Genuino 101的最大波特率57600

Arduino或Genuino 101 RX在销13引脚时不工作

==程序效果==

打开串口,设置波特率为115200(zhongbest所售ESP8266模块波特率默认115200,其他厂家的为9600波特率),串口显示:

Goodnight moon!
Hello, world?

ERROR

表示已经进入AT模式,如果只有Goodnight moon!,说明没有进入AT模式。

发送AT,反馈OK。

1111120170420112824

*无法进入AT模式的,请按照下面常见问题,排除故障。

*没有进行连接设备调试的,请自行搜索网上示例教程。

==常见问题==

1、串口没反应的话,检查波特率是否正确,看下接线,TX和RX是否接反了。

2、CH_PD要输入一个高电平3.3V,有时候因供电不足会导致模块无反应。

3、示例程序建议不好擅自更改(波特率也不要改!!),会导致模块反馈错误。先将本示例做通后,再尝试其他程序。

4、关于ESP8266修改波特率的设置方法:AT指令为:AT+UART=9600,8,1,0,0

首先,  上电后打开串口,选择115200波特率  在串口发送AT   反馈 OK,  随后发送AT+UART=9600,8,1,0,0 ,返回OK   关闭串口,打开IDE,将程序里的波特率改为9600,重新上传程序,再打开串口,串口选择9600波特率,发送AT  反馈OK。   指令反馈ERROR说明没有设置成功或者指令格式错误!

5、NANO无法对ESP8266进行供电,如果使用NANO驱动ESP8266,则需要3.3V独立供电。

==ESP8266-01无线模块刷固件说明==

(仅在固件无法使用、重刷固件和烧写方式后使用,新模块刚拿到手无需刷写固件!)

                刷了必后悔!!!

timg_副本_副本

 

1.准备材料:

  • 一台电脑
  • USB转串口(USART)模块。
  • ESP8266模块
  • 升级软件(本文最下方有下载)
  • 固件包(最好去芯片公司下载,本文最下方附固件,网上的很多都不能用的)

2、刷固件接线方式:

ESP8266USB_TTL_bb

UTXD—–RXD

URXD—–TXD

CH_PD—-3.3v

VCC——-3.3V

GND——GND

GPIO0—–GND

3、操作方法:

(1)连接好线路后,将USB-TTL插在电脑上,打开电脑的设备管理器并记录端口COM号。

20161202124738

(2)打开ESP8266一键烧录工具,目标串口自动识别(无法识别的,请手动设置)。

20161202124654

(3)点击ESP8266一键烧录工具的“配置”界面,看到第二栏//FLASH。

20161202124826

(4)点击第二栏//FLASH的小齿轮,只选取第二栏,更改为你的固件所在的位置并设置成0x00000。

20170412165730

注:只保留第二栏,其他几栏的X要取消掉,不然刷成功后,模块上电会无限重启和乱码。

(5)返回“操作”界面,点击”一键烧写“按钮。

20161202125039

(6)软件生成二维码,AP MAC  STA MAC后 ,自动进行烧录。

20161202125117

(7)等待烧录完成。固件就升级成功了。

20161202125504

(8)将ESP8266上的GPIO0端口的连接线去掉,重新上电ESP8266,打开串口调试工具,发送AT指令验证(AT或者AT+GMR)。

20161202125829

4、注意事项:

注意: 一键烧写后,ESP8266的固件将更改。

1.请将MTDO与GPIO0置于低电平,GPIO2置于高电平。
如果你的模块没有MTDO,请至少将GPIO0置于低电平。
GPIO0置于低电平是烧写模式,高电平是运行模式。
2.请复位(复位是指RST低电平脉冲)或重新上电进入烧写模式。
3.最好不要使用USB转TTL引出的电源,请使用独立电源(有可能供电不足)。
4.烧写成功后,请重新上电。模块波特率更改为9600或115200.
5.烧写中途失败后,请重新上电烧写,否则无法使用模块。

ESP8266无线模块烧写方式:http://zhongbest.com/2017/01/02/esp8266-01%e6%97%a0%e7%ba%bf%e6%a8%a1%e5%9d%97%e7%9a%84arduino%e7%83%a7%e5%86%99%e6%96%b9%e5%bc%8f/

==相关下载==

ESP8266最新AT指令集(061229):http://pan.baidu.com/s/1slyDHrn

ESP8266新手必需:http://pan.baidu.com/s/1bX4OgQ

未经允许不得转载:Arduino-Maker » ESP8266-01无线模块兼容Arduino

分享到:更多 ()

评论 2

评论前必须登录!

 

  1. #1

    这里好多资源啊啊

    a201577f05461年前 (2016-10-22)
    • 您好,中贝斯特欢迎您!

      arron1年前 (2016-10-24)

中贝斯特线上商城

旗舰店企业店