欢迎光临
我们一直在努力

【模块基础教程】ESP8266-01示例教程适用于Arduino平台

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)
内超低能耗,适合电池供电应用
3.3V 单电源供电

接口定义


 
 
 
=======================我是一条很重要但没有意义的分割线=======================
 
 
 
1、通过AT指令模式对ESP8266的设置(PL2303版):
AT指令设置:请不要在中文输入状态下输入AT指令,请勿直接复制粘贴AT指令。AT指令全部为大写字母(不支持小写),符号为半角输入状态。发送AT指令后,反馈为ERROR表示发送失败,请务必检查AT指令格式。

接线方法:
VCC—-3.3
GND–GND
CH_PD–3.3
GPIO0–GND(烧录固件时连接,不烧录时为空)
RX–TX
TX–RX

上下图一个意思,哪个习惯按照哪个来。

注意:使用电脑前置USB、延长线、USB扩展器、笔记本USB等情况下,有可能会供电不足,此时需要对8266进行独立供电,输入必须也是3.3V。
如果你AT指令发出去没反应,或者需要独立供电,可以参考视频。点我观看

进入AT模式后,发送一个AT,如果返回OK,则说明已经进入AT指令设置模式。
最新的AT指令手册可以在本教程最下方下载到。

2、通过AT指令模式对ESP8266的设置(Arduino软串口版)(本方式及其不建议使用,如非必要请勿尝试,本方式不做技术支持!!!!)
接线方式:
ESP8266 和Arduino UNO:
VCC—-3.3v
GND—GND
CH_PD—3.3v(建议独立供电3.3V ,否则有可能因供电不足) 不要接5V!!!
TXD—–PIN10
RXD—–PIN11

#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。

3、常见问题
1、串口没反应的话,检查波特率是否正确,看下接线,TX和RX是否接反了。
2、CH_PD要输入一个高电平3.3V,有时候因供电不足会导致模块无反应。
3、示例程序建议不好擅自更改(波特率也不要改!!),会导致模块反馈错误。
4、关于ESP8266修改波特率的设置方法,按照AT手册设置波特率后,是无法查询当前模特率的。如果你在该波特率下发送AT有反应,则从侧面证明目前就是这个波特率。
5、NANO无法对ESP8266进行供电,如果使用NANO驱动ESP8266,则需要3.3V独立供电。

=======================我是一条很重要但没有意义的分割线=======================

3、ESP8266-01无线模块刷固件(如果各种排错都无法解决问题,这是最后的救命稻草。)
重点!!!仅在固件无法使用、重刷固件和烧写方式后使用,新模块刚拿到手无需刷写固件
烧写教程传送门:点我直达跳转
ESP8266最新AT指令集(061229):http://pan.baidu.com/s/1slyDHrn
ESP8266新手必备:http://pan.baidu.com/s/1bX4OgQ
ESP8266厂家工具包和固件:点我下载

=======================我是一条很重要但没有意义的分割线=======================
4、相关小实验
1、Blynk物联网系列教程一【Blynk+Arduino+ESP8266(AT固件方式)】:点我传送门
2、手机通过ESP8266控制Arduino上的LED灯(局域网AT指令方式):点我传送门

未经允许不得转载:Arduino-Maker » 【模块基础教程】ESP8266-01示例教程适用于Arduino平台

支付宝扫码打赏 微信打赏

原创文章,若帮到您,欢迎打赏

分享到:更多 ()

评论 2

评论前必须登录!

 

  1. #1

    这里好多资源啊啊

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

      arron3年前 (2016-10-24)

线上商城

中贝斯特创客空间蘑菇云创客教育