ESP-01 ESP8266

来自丢石头百科
Admin讨论 | 贡献2020年11月20日 (五) 18:03的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
ESP-01 ESP8266
ESP-01-ESP8266.jpg
基本信息

分类: WiFi Espressif ESP8266

品牌: 安信可

功能简介
特性

无特性,不解释

接口

UART接口

相关产品
ESP8266

产品概述

ESP-01 ESP8266 是基于乐鑫ESP8266开发的低功耗WiFi模块,可以方便地进行二次开发,接入云端服务,实现手机3/4G全球随时随地的控制,加速产品原型设计。

模块核心处理器 ESP8266 在较小尺寸封装中集成了业界领先的 Tensilica L106 超低功耗 32 位微型 MCU,带有 16 位精简模式,主频支持 80 MHz 和 160 MHz,支持 RTOS,集成 Wi-Fi MAC/ BB/RF/PA/LNA。支持标准的 IEEE802.11 b/g/n 协议,完整的 TCP/IP 协议栈。用户可以使用该模块为现有的设备添加联网功能,也可以构建独立的网络控制器。

ESP8266 是高性能无线 SoC,以最低成本提供最大实用性,为 Wi-Fi 功能嵌入其他系统提供无限可能。

产品特点

  • 体积超小的802.11b/g/n WiFi SOC模块
  • 采用低功率32位CPU,可兼作应用处理器
  • 主频最高可达160MHz
  • 支持USART、GPIO等接口
  • 支持多种休眠模式,深度睡眠电流低至20uA
  • 内嵌LWIP协议栈
  • 支持STA、AP、STA+AP工作模式
  • 支持smart config、AirKiss一键配网
  • 通用AT指令可快速上手
  • 支持SDK二次开发
  • 支持串口本地升级和远程固件升级(FOTA)

选型列表

模组认证对比:

电气参数对比:

型号 芯片方案 天线形式 封装形式 尺寸 (mm) 传输距离 (米) 供电电压 SPI Flash IO 数 Modem Sleep Light Sleep Deep Sleep
ESP-01 ESP8266 板载天线 DIP-8 24.7 * 14.4 * 11.0 50 3.3V 8Mbit 2 20mA 2mA 20uA
ESP-01M ESP8285 板载天线 DIP-18 18.0 * 18.0 * 2.8 40 3.3V 8Mbit / 16Mbit 11 20mA 2mA 20uA
ESP-01S ESP8266 板载天线 DIP-8 24.7 * 14.4 * 11.0 50 3.3V 8Mbit 2 20mA 2mA 20uA
ESP-07 ESP8266 IPEX座 / 陶瓷天线 SMD-16 21.2 * 16.0 * 3.0 50 3.3V 8Mbit 9 20mA 2mA 20uA
ESP-07S ESP8266 IPEX座 / 陶瓷天线 SMD-16 17.0 * 16.0 * 3.0 100 3.3V 32Mbit 9 20mA 2mA 20uA
ESP-12F ESP8266 板载天线 SMD-22 24.0 * 16.0 * 3.0 80 3.3V 32Mbit 9 20mA 2mA 20uA
ESP-12S ESP8266 板载天线 SMD-16 24.0 * 16.0 * 3.0 80 3.3V 32Mbit 9 20mA 2mA 20uA
ESP-15F ESP8266 板载天线 / IPEX座 PH2.54接线器 41.3 * 24.1 * 6.6 50 5V 32Mbit 3 多种 多种 多种
  • 通信协议:完整的802.11b/g/n WiFi SoC模块
  • 工作频段:2400~2483.5MHz

使用说明

ESP-01 ESP8266 出厂时已默认内置 AT 固件,且默认波特率为 115200,可参考 #设计指南 搭建最小系统电路,之后即可进行 AT 指令操作。

串口与网络调试助手下载:串口调试助手

硬件连接

Icon-warning.png注意

由于模块功率较大,尽量请勿使用 USB 转 TTL 的 3.3V 供电。建议使用 3 节干电池或经过 LDO 转换后的 3.3V。

ESP-01 ESP8266 Connection.png

使用示例

本章节讲解如何在 PC 端通过串口配置 2 个 ESP-01 ESP8266 通过 TCP 相互通信。

Icon-warning.png注意
  • 所有的 AT 命令都需要以 \r\n 结束(回车换行)。
  • 如果在 PC 端进行测试,可通过 PC 端代替一端模块建立相应的连接。

更多示例请参考:

TCP 通信测试

本实验需要用到 2 个模块,如果用 PC 端作为服务器的话,单个模块也可以进行这个实验,见#HTTP 通信测试

TCP Server 端配置:

AT+CWMODE=2                                 //配置为 AP 模式,响应:OK
AT+CWSAP_DEF="TCP_Server","12345678",5,4    //配置 AP 信息,响应:OK
AT+CIFSR                                    //查询本机 IP 地址
AT+CIPMUX=1                                 //开启多链接
AT+CIPSERVER=1                              //开启服务器

TCP Client 端配置:

AT+CWMODE=1                                 //配置为Station 模式
AT+CWJAP_DEF="TCP_Server","12345678"        //连接到AP
AT+CIFSR                                    //查询本机IP 地址
AT+CIPMUX=0                                 //开启单链接
AT+CIPSTART="TCP","192.168.4.1",333         //连接到TCP 服务器
AT+CIPSEND=12                               //发送 12 个字节的数据到服务器端

出现 > 符号之后,串口发送任意 12 个字节,如 Hello world! (不带回车换行)

此时Server端的串口打印:

+IPD,0,12:Hello world!

上述操作如果执行成功的话,预期结果如下:

Server 端: Client 端:
ESP-01 07 12 ESP8266 User Manual 6.png ESP-01 07 12 ESP8266 User Manual 7.png

TCP Server 端通信完成之后,如需关闭服务器,则发送:

AT+CIPSERVER=0                              //关闭服务器

HTTP 通信测试

如果只有一个模块的话,用户只要能把它连接到路由器中,也可以对单个模块进行测试。本例子中,模块是 Client 端,以访问本网页为例。

Client 端配置:

串口依次发送:

AT+CWMODE=1                                 //配置为Station 模式
AT+CWJAP_DEF="SSID","password"              //SSID是路由器的名称,password是密码
AT+CIPCLOSE                                 //尝试关闭连接。如果之前没有连接则会报错,可忽略
AT+CIPSTART="TCP","wiki.diustou.com",80     //连接到服务器
AT+CIPMODE=1                                //透传模式
AT+CIPSEND                                  //发送内容

出现 > 符号之后,串口发送 GET 请求:

GET / HTTP/1.1
Host: wiki.diustou.com:80
Connection: keep-alive
\r\n\r\n(结束符)

之后服务器便会返回响应的内容。

退出透传,不要勾选新行(\r\n):

+++

退出连接。

固件烧录方法

管脚电平

进入下载模式的时候,需要把 GPIO0管脚拉低,EN拉高,其他IO管脚悬空。管脚分布图见 #产品尺寸

步骤

1. 打开烧录软件:ESP Download Tool

2. 依次点击 Developer Mode --> ESP8266 DownloadTool。

ESP-01 07 12 ESP8266 User Manual 8.png

ESP-01 07 12 ESP8266 User Manual 9.png

3. 点击 [...],选择所需固件,固件下载请参见 #ESP8266 固件汇总

4. 选择之后记得勾选固件,勾选之后固件路径会变绿。

5. 填入固件的起始位置,一般是 0x0,详见对应固件的说明。

6. CrystalFreq:26M,此处禁止修改

7. SPI SPEED:40M,此处禁止修改

8. SPI MODE:DOUT

9. FLASH SIZE:8Mbit

10. 选择相应的串口,波特率任意。建议使用 FT232 串口模块,可以支持更高的波特率,有些串口模块不支持超过 1M 的波特率。

11. 断开电源,点击 START,等待上电同步。

ESP-01 07 12 ESP8266 User Manual 10.png

12. 重新上电便会开始下载。如果烧录成功,Download Panel 将提示:FINISH。

ESP-01 07 12 ESP8266 User Manual 11.png

产品尺寸

ESP-01 ESP8266 Dimensions.png

管脚定义

# 名称 说明
1 GND GND
2 IO2 U1_TXD,I2C_SDA,I2SO_WS
3 IO0 GPIO0,HSPI_MISO,I2SI_DATA
4 RXD GPIO3,I2SO_DATA
5 TXD GPIO1
6 EN 芯片使能端,高电平有效
7 RST 复位引脚,低电平有效
8 VCC 模组供电引脚,电压范围 3.0~3.6V

启动模式

模式 CH_PD (EN) RST GPIO15 GPIO0 GPIO2 TXD0
下载模式
运行模式
测试模式 - - -

电气特性

最大额定值

额定值 条件 单位
存储温度 - -40 ~ 125
最大焊接温度 - 250
工作电压 IPC/JEDEC J-STD-020 +3.0 ~ +3.6 V

建议工作环境

工作温度 -20 25 70
供电电压 3.0 3.3 3.6 V

数字端口特征

说明 名称 最小值 典型值 最大值 单位
输入逻辑电平低 VIL -0.3 - 0.25 * VDD V
输入逻辑电平高 VIH 0.75 * VDD - VDD + 0.3 V
输出逻辑电平低 VOL N - 0.1 * VDD V
输出逻辑电平高 VOH 0.8 * VDD - N V
  • 注意:如无特殊说明,测试条件为:VDD = 3.3 V,温度为 25 ℃。

功耗

所有测量均在没有 SAW 滤波器的情况下,于天线接口处完成。

所有发射数据是基于 90% 的占空比,在持续发射的模式下测得的。

模式 典型值 单位
传送 802.11b, CCK 11Mbps, POUT=+17dBm 170 mA
传送 802.11g, OFDM 54Mbps, POUT =+15dBm 140 mA
传送 802.11n, MCS7, POUT =+13dBm 120 mA
接收 802.11b,包长 1024 字节, -80dBm 50 mA
接收 802.11g,包长 1024 字节, -70dBm 56 mA
接收 802.11n,包长 1024 字节, -65dBm 56 mA
Modem-Sleep① 20 mA
Light-Sleep② 2 mA
Deep-Sleep③ 20 uA
Power Off 0.5 uA
  • 注①:Modem-Sleep⽤于需要 CPU 一直处于工作状态如 PWM 或 I2S 应⽤等。在保持 WiFi 连接时,如果没有数据传输,可根据 802.11 标准 (如 U-APSD),关闭 WiFi Modem 电路来省电。例如,在 DTIM3 时,每 sleep 300mS,醒来 3mS 接收 AP 的 Beacon 包等,则整体平均电流约 20mA。
  • 注②:Light-Sleep 用于 CPU 可暂停的应用,如 WiFi 开关。在保持 WiFi 连接时,如果没有数据传输,可根据 802.11 标准(如 U-APSD),关闭 WiFi Modem 电路并暂停 CPU 来省电。例如,在 DTIM3 时,每 sleep 300 ms,醒来 3ms 接收 AP 的 Beacon 包等,则整体平均电流约 2 mA。
  • 注③:Deep-Sleep 用于不需一直保持 WiFi 连接,很长时间才发送一次数据包的应用,如每 100 秒测量⼀次温度的传感器。每 300 s 醒来后需 0.3s - 1s 连上 AP 发送数据,则整体平均电流可远小于 1mA。

发射功率

描述 最小值 典型值 最大值 单位
802.11b@11Mbps 14 16 18 dBm
802.11g@54Mbps 12 14 16 dBm
802.11n@HT20, MCS7 11 13 15 dBm

接收灵敏度

参数 典型值 单位
DSSS, 1 Mbps -90 dBm
CCK, 11 Mbps -85 dBm
6 Mbps (1/2 BPSK) -88 dBm
54 Mbps (3/4 64-QAM) -70 dBm
HT20, MCS7 (65 Mbps, 72.2 Mbps) -67 dBm

设计指南

天线摆放说明

为了使终端产品获得最佳的射频性能,请注意根据本指南合理设计模块及天线在底板上的摆放位置。

  • 方案 1(推荐):将模块沿 PCB 板边放置,且天线在板框外;
  • 方案 2:将模块沿 PCB 板边放置,天线沿板边放置且下方挖空;

ESP-12S Antenna Location.png

模块外围走线说明

  1. 模块外围引出了一些 GPIO 口,如需使用建议在 IO 口上串联 10-100 欧姆的电阻。这样可以抑制过冲,是两边电平更平稳。对 EMI 和 ESD 都有帮助。
  2. 特殊 IO 口的上下拉,需参考规格书的使用说明,此处会影响到模块的启动配置。
  3. 模块的 IO 口是 3.3V 如果主控与模块的 IO 电平不匹配,需要增加电平转换电路。
  4. 如果 IO 口直连到外围接口,或者排针等端子,建议在 IO 走线靠近端子处预留 ESD 器件。

GPIO 电平转换

ESP-01 07 12 ESP8266 User Manual 1.png

电源参考设计

ESP-01 07 12 ESP8266 User Manual 2.png

ADC 参考设计

ESP-01 07 12 ESP8266 User Manual 3.png

自动下载电路

ESP-01 07 12 ESP8266 User Manual 4.png

回流焊炉温曲线

ESP-01 07 12 ESP8266 User Manual 5.png

资源下载

ESP8266 和 ESP8285 资源通用。

用户手册

示例程序

ESP8266 固件汇总

博安通 AT 固件

  • 特性:操作简单,任何mcu均可直接接入
  • 下载地址: 博安通出厂固件
  • 更新时间:2019年12月22日
  • 更新说明: v1.7.1.0 AT Firmware,内含 8Mbit 和 32Mbit 两个版本,请客户根据自己产品的flash大小来烧录

直连腾讯开发平台的AT固件

  • 特性:可连接腾讯开发平台
  • 下载地址: 安信可腾讯云AT固件
  • 更新说明:2020年02月28日更新,串口引脚为 txd=GPIO15, rxd=GPIO13.

MQTT 透传AT固件 (默认)

  • 特性:支持TLS连接,务必注意通讯引脚为( txd=GPIO15, rxd=GPIO13)
  • 下载地址: MQTT固件
  • 使用说明: ESP8266-MQTT指令手册
  • 更新时间:2020年2月21日
  • 更新说明:IO13为RX、IO15为TX作为AT串口与单片机TX/RX接线连接,串口1作为log串口,默认波特率为115200。测试TCP直连服务器使用 EMQ,测试TLS连接服务器使用 AWS。

MQTT透传AT固件(AT通讯串口改为UART0)

  • 特性:支持TLS连接
  • 下载地址:MQTT固件(改)
  • 使用说明:ESP8266-MQTT指令手册
  • 更新时间:2020年5月09日
  • 更新说明:正常的RX、TX作为AT串口与单片机TX/RX接线连接,串口1作为log串口,默认波特率为115200。测试TCP直连服务器使用 EMQ,测试TLS连接服务器使用 AWS。

出厂默认 AT 固件

  • 特性:一条指令即可连接到安信可云服务,操作简单,任何mcu均可直接接入
  • 下载地址:默认出厂固件
  • 更新时间:2017年11月30日
  • 更新说明:v1.5.4.1 AT Firmware,内含 8Mbit 和 32Mbit 两个版本 ,注意:1MByte flash的模组因为内存不足,所有带AiCloud2.0的AT固件都不能使用,flash大于或等于2MByte。使用CIUPDATE命令升级前,请确认模组的flash大于或等于2M!

ESP8266 开发工具

SDK 一体化开发环境:

  • 下载地址:网盘链接 提取码: fzfd
  • 更新时间:2019.07.22
  • 更新说明:支持 ESP32/ESP8266

烧录WiFi固件工具:

  • 下载地址:ESP Download Tool
  • 更新时间:2020.8.15
  • 更新说明:支持ESP32/ESP32-S2/ESP8266/ESP8285

AT 指令

官方应用文档

产品规格书

SDK 二次开发资料

云平台对接示例

FAQ

问题:
ESP8266 常见问题哪里可以找到答案?
答复:
ESP8266 常见问题汇总,点击下载: 中文英文


问题:
使用 ESP8266 Download Tool 烧录固件的时候,报错 8-download data fail。
答复:
  • 可能是选错了固件。固件必须和 Flash 大小相匹配。如 8Mbits Flash 对应 1Mbytes 固件,32Mbits Flash 对应 4Mbytes 固件。
  • 在确认固件没有问题的情况下,试试给模块重新上电再烧录。


Icon-mail.png 联系 丢石头

我们的工作时间是: 09:00-18:00 (UTC+8 周一到周六)