ESP8266
ESP8266芯片,虽然它的定位是个Wi-Fi网络解决方案,但它更像一个物联网解决方案。它不仅体积小——大概11*10毫米左右,而且造价便宜,一个ESP8266
ESP8266芯片,虽然它的定位是个Wi-Fi网络解决方案,但它更像一个物联网解决方案。它不仅体积小——大概11*10毫米左右,而且造价便宜,一个ESP8266的集成WIFI板功耗低,开发容易。
奥金瑞为了满足市场的需要,特用esp8266开发了物联网应用模块,适用于各种物联网环境,也是目前出货量 模组厂之一;
的集成WIFI板功耗低,开发容易。
奥金瑞为了满足市场的需要,特用esp8266开发了物联网应用模块,适用于各种物联网环境,也是目前出货量 模组厂之一;
摘要
ESP8266是一款廉价的wifi模块。提供sdk可以自己编写片内程序,不需要外置arduino之类的控制器。也提供AT命令,功如arduino之类的控制器调用,还可以刷nodemcu固件,直接使用lua进行编程,降低开发门槛。
对其简单的了解:体积小巧,且多种封装,没有一个硬币大。
价格便宜,十几块钱在wifi模块里面算是 的了。
提供AT指令,这样就可以使用arduino进行控制,实现互联网数据交互。提供SDK包、烧固件工具,串口烧写固件。这样把arduino作为主控的功能都省了,直接把逻辑写进代码,烧到固件里,就能按我们的业务执行了。
有GPIO口,有SPI功能,有I2C功能,有UART功能,有ADC功能(0-1V输入),有了这些功能,很多感应器的应用都没问题了。有一个固件包,叫nodemcu,简单的看了一下,就是打包了lua到固件里,这样允许我们使用lua这种比较容易入门的语言来开发,几行代码就能实现读取数据然后上传到互联网。
ESP8266的核心是一块Diamond Standard 106 Micro控制器,一个低功耗的32位RISC控制器。它拥有GPIO、I2C、ADC、SPI、PWM等模块,你可以用它做一些微控制器能做的事。它还可以支持AP(Access Point)、STA(Station)、AP+STA共存模式,并且使用高效的AT指令。
如同官方所示,它还具有下面的一些特性:
模块特点:
· 超低功耗的WIFI模块(深度睡眠模式,直接关闭模式,可直接电池供电,卓越省电)
· 完美支持802.11 b/g/n协议
· 支持 市面上几乎所有WIFI加密方式
· 无需任何用户驱动,对用户单片机只需要当成普通串口使用
· 支持AP(热点)/STA(WIFI节点)共存
· 支持 TCP Server/TCP Client/UDP Server/UDP Client工作方式
· 支持DHCP DNS HTTP高级应用层协议
· 支持串口AT指令配置
· 局域网内支持搜索协议查找模块
· 支持SmartLink智能联网功能,用手机APP控制模块一键连接普通无线路由器
- SDIO 2.0、SPI、UART 接口
- 32-pin QFN 封装
- 集成 RF 开关、 balun、LNA、 24 dBm PA 、DCXO 和 电源管理单元(PMU)
- 集成 RISC 处理器、片上存储器和外部存储器接口
- 集成 MAC/基带处理器
- 高品质的服务管理
- 高保真音频应用所需的 I2S 接口
- 所有内部供电均包含片上低压差线性稳压器
- 专有的无杂散时钟生成架构
- 集成 WEP、 TKIP、AES 和 WAPI 引擎
- 工作温度范围:-40C ~ 125C
ESP8266芯片就是这样一个高性价比的WiFi芯片,如果你关注于物联网解决方案,可以来了解一下这个芯片。不仅连网简单,而且快速上手。你可以用Arduino来编程,也可以用Lua语言来写相关代码。
ESP8266WIFI模组应用:
物联网 智能家居 智能家电 WiFi 监控、TCP/IP和 Wi-Fi协处理器;
WiFi 遥控飞机、车等玩具领域;
WiFi 网络收音机、摄像头、数码相框;
医疗仪器、数据采集、手持设备;
WiFi脂肪称、智能卡终端;家居智能化;
仪器仪表、设备参数监测、无线POS 机;
现代农业、军事领域等其他无线相关二次开发应用的消费类电子
ESP8266智能WiFi模块支持客户自定义服务器,提供
SDK 给客户二次开发,支持用户配置:AT+指令集,WebSite操作,Android/iOS终端。
支持UART应用硬件连接,支持传感器应用硬件连接,支持智能灯应用硬件连接,支持WIFI智能开关应用硬件连接。
ESP8266 支持 softAP 模式,station 模式,softAP +
station 共存模式三种。利用 ESP8266 可以实现十分灵活的组网方式和网络拓扑。
1. 产品概述
1.1. 概述
乐鑫智能互联平台——ESP8266 拥有高性能无线 SOC,给移动平台设计师带来福音,它以 成本提供 实用性,为
WiFi
功能嵌入其他系统提供无限可能。
ESP8266 是一个完整且自成体系的
WiFi
网络解决方案,能够独立运行, 也可以作为 slave 搭载于其他 Host 运行。
ESP8266 在搭载应用并作为设备中 的应用处理器时,能够直接从外接闪存中启动。内置的高速缓冲存储器有利于提高系统性能,并减少内存需求。
另外一种情况是,无线上网接入承担
WiFi
适配器的任务时,可以将其添加到任何基于微控制器的设计中,连接简单易行,只需通过 SPI/SDIO 接口或中央处理器 AHB 桥接口即可。
ESP8266 强大的片上处理和存储能力,使其可通过 GPIO 口集成传感器及其他应用的特定设备,实现了 前期的开发和运行中最少地占用系统资源。
ESP8266 高度片内集成,包括天线开关balun、电源管理转换器,因此仅需极少的外部电路,且包括前端模块在内的整个解决方案在设计时将所占PCB空间降到 。
装有ESP8266的系统表现出来的 特征有:节能VoIP在睡眠/唤醒模式之间的快速切换、配合低功率操作的自适应无线电偏置、前端信号的处理功能、故障排除和无线电系统共存特性为消除蜂窝/蓝牙/DDR/LVDS/LCD干扰。
1.1.1. 特点
Ø 802.11 b/g/n
Ø WIFI @2.4 GHz,支持 WPA/WPA2 安全模式
Ø 超小尺寸模组 11.5mm*11.5mm
Ø 内置 10 bit 高精度 ADC
Ø 内置 TCP/IP 协议栈
Ø 内置 TR 开关、balun、LNA、功率放大器和匹配网络
Ø 内置 PLL、稳压器和电源管理组件
Ø 802.11b 模式下+ 19.5dBm 的输出功率
Ø 支持天线分集
Ø 断电泄露电流小于10uA
Ø 内置低功率 32 位 CPU:可以兼作应用处理器
Ø SDIO 2.0、 SPI、UART
Ø STBC、1x1 MIMO、2x1 MIMO
Ø A-MPDU 、A-MSDU 的聚合和 0.4 s的保护间隔
Ø 2ms之内唤醒、连接并传递数据包
Ø 待机状态消耗功率小于1.0mW (DTIM3)
Ø 工作温度范围 -40 ~ 125℃
1.1.2. 模块参数
无线参数
标准认证:CCC/FCC/CE
无线标准:802.11 b/g/n
频率范围:2.4G-2.5G(2400M-2483.5M)
发射功率:
802.11 b: 20 dBm
802.11 g: 17 dBm
802.11 n: 14 dBm
接收灵敏度:
802.11 b: (11Mbps) -91db
802.11 g: (54Mbps) -75db
802.11 n: (MCS7) -72db
天线选项:PCB板载天线、外置天线、IPEX接口天线、陶瓷贴片天线
硬件参数
数据接口:UART,PWM、GPIO
工作电压:3.3V
工作电流:平均电流 80mA
工作温度:-40°~125°
存储温度:常温
尺寸:5x5mm
外部接口:N/A
软件参数
无线网络模式:station/softAP/SoftAP+station
安全机制:WPA/WPA2
加密类型:WEP/TKIP/AES
升级固件:本地串口烧录,云端升级
定制开发:支持客户自定义服务器,提供 SDK 给客户二次开发
网络协议:IPv4,TCP/UDP/HTTP/FTP
用户配置:AT+指令集,WebSite操作,Android/iOS终端
1.1.3. 主要应用领域
Ø 智能电源插头
Ø 家庭自动化
Ø 网状网络
Ø 工业无线控制
Ø 婴儿监控器
Ø 网络摄像机
Ø 传感器网络
Ø 可穿戴电子产品
Ø 无线位置感知设备
Ø 安全ID标签
Ø 无线定位系统信号
1.2. 硬件介绍
1.2.1. 管脚定义
Table 1 ESP8266管脚功能定义
Pin
|
Name
|
Function
|
|
1
|
VDDA
|
模拟电源3.0~3.3V
|
|
2
|
LNA
|
射频天线接口,芯片输出阻抗为50Ω,无需对芯片进行匹配,但建议保留π型匹配网络对天线进行匹配
|
|
3
|
VDD3P3
|
功放电源3.0~3.3V
|
|
4
|
VDD3P3
|
功放电源3.0~3.3V
|
|
5
|
VDD_RTC
|
NC(1.1V)
|
|
6
|
TOUT
|
adc 管脚
|
|
7
|
CHIP_EN
|
芯片使能端。高电平:有效,芯片正常工作;
|
|
低电平:芯片关闭,电流很小。
|
8
|
XPD_DCDC
|
Deep-Sleep Wakeup;GPIO16
|
9
|
MTMS
|
GPIO14; HSPICLK
|
10
|
MTDI
|
GPIO12;HSPIQ
|
11
|
VDDPST
|
数字和IO电源(1.8V~3.3V)
|
12
|
MTCK
|
GPIO13;HSPID
|
13
|
MTDO
|
GPIO15;HSPICS
|
14
|
GPIO2
|
可用作烧写Flash 时UART
Tx;GPIO2
|
15
|
GPIO0
|
GPIO0;SPICS2
|
16
|
GPIO4
|
GPIO4
|
17
|
VDDPST
|
数字和IO电源(1.8V~3.3V)
|
18
|
SDIO_DATA_2
|
连接到SD_D2
(串联200Ω);SPIHD; HSPIHD
|
19
|
SDIO_DATA_3
|
连接到SD_D3
(串联200Ω); SPIWP; HSPIWP
|
20
|
SDIO_CMD
|
连接到SD_CMD(串联200Ω);
SPICS0
|
21
|
SDIO_CLK
|
连接到SD_CLK
(串联200Ω); SPICLK
|
22
|
SDIO_DATA_0
|
连接到SD_D0
(串联200Ω); SPIQ
|
23
|
SDIO_DATA_1
|
连接到SD_D1
(串联200Ω); SPID
|
24
|
GPIO5
|
GPIO5
|
25
|
U0RXD
|
可用作烧写Flash 时UART
Rx;GPIO3
|
26
|
U0TXD
|
GPIO1;SPICS1
|
27
|
XTAL_OUT
|
连接晶振输出端,可用于提供BT的时钟输入
|
28
|
XTAL_IN
|
连接晶振输入端
|
29
|
VDDD
|
模拟电源3.0~3.3V
|
30
|
VDDA
|
模拟电源3.0~3.3V
|
31
|
RES12K
|
串联12kΩ电阻到地
|
32
|
EXT_RSTB
|
外部reset信号(低电平有效)
|
|
|
|
|
|
|
注:GPIO2、GPIO0、MTDO构成3bit可进行SDIO模式的选择。
1.3. 典型应用
1.3.1. UART应用硬件连接
我司已根据UART应用定义以下pin脚:
UART0: (PIN 25) U0RXD+ (PIN 26) U0TXD---通信
UART1: (PIN 14) GPIO2( TXD)---打印
目前 uart0 可以用来收发用户自己的数据包,uart1 用作打印信息。
1.3.2. 传感器应用硬件连接
我司已根据传感器应用定义以下pin脚:
(PIN 9)
MTMS---I2C_SCL;
(PIN 14) GPIO2---I2C_SDA;
(PIN 12) MTCK---复位按键 (按住复位按键重新上电,可完成复位);
(PIN 15) GPIO0---wifi 工作状态指示灯;
(PIN 10) MTDI--- 与服务器通信的指示灯;
(PIN 25) U0RXD---Button,暂未定义功能;
(PIN 13)
MTDO---LED,暂未定义功能。
1.3.3. 智能灯应用硬件连接
我司已根据智能灯应用定义以下pin脚:
(PIN 9) MTMS---红外接收;
三路 PWM 输出:
(PIN 10) MTDI---红色灯控制;
(PIN 13) MTDO---绿色灯控制;
(PIN 12) MTCK---蓝色灯控制;
已应用方案: 智能灯应用
1.3.4. WIFI智能开关应用硬件连接
我司已根据WIFI智能开关应用定义以下pin脚:
(PIN 13) MTDO---控制继电器,可高低电平控制;
(PIN 15) GPIO0--- 指示 wifi 工作状态;
(PIN 12) MTCK---接复位按键(长按 5s 可完成复位功能);
已应用方案: WIFI智能开关应用
2. 功能介绍
2.1. 无线组网
ESP8266 支持 softAP 模式,station 模式,softAP + station 共存模式三种。利用
ESP8266
可以实现十分灵活的组网方式和网络拓扑。
注,
SoftAP:即无线接入点,是一个无线网络的中心节点。通常使用的无线路由器就是一个无线接入点。
Station:即无线终端,是一个无线网络的终端端。
2.1.1. ESP8266 在 SoftAP 模式
ESP8266 作为 softAP,手机、电脑、用户设备、其他 ESP8266 station 接口等均可以作为 station 连入ESP8266,组建成一个局域网。
2.1.2. ESP8266 在 station 模式
ESP8266 作为 station,通过路由器(AP)连入 internet ,可向云端服务器上传、下载数据。用户可随时使用移动终端(手机、笔记本等),通过云端监控 ESP8266 模块的状况,向 ESP8266 模块发送控制指令。
2.1.3. ESP8266 在 SoftAP + station 共存模式
ESP8266 支持 softAP+station 共存的模式,用户设备、手机等可以作为station 连入 ESP8266 的 softAP接口,同时,可以控制 ESP8266 的 station 接口通过路由器(AP)连入 internet。
2.2. 透传功能
透传,即透明传输功能。Host 通过uart 将数据发给 ESP8266,ESP8266 再通过无线网络将数据传出去;ESP8266 通过无线网络接收到的数据,同理通过uart 传到Host。ESP8266 只负责将数据传到目标地址,不对数据进行处理,发送方和接收方的数据内容、长度完全一致,传输过程就好像透明一样。
透传需要先建立连接:
Ø 无线网络参数:
² 网络名称(SSID)
² 安全模式
² 密钥(password)
Ø TCP连接参数
² 协议类型
² 连接类型(client)
² 目的IP地址
² 目的端口
Ø 串口参数
² 波特率
² 数据位
² 检验位
² 停止位
² 硬件流控
2.3. UART成帧机制
ESP8266 判断UART传来的数据时间间隔,若时间间隔大于20ms,则认为一帧结束;否则,一直接收数据到上限值2KB,认为一帧结束。ESP8266模块判断UART来的数据一帧结束后,通过WIFI接口将数据转发出去。
成帧时间间隔为20ms,一帧上限值为2KB。
2.4. 加密
ESP8266 支持多种无线网络加密方式,包括:
Ø WEP (only
station)
Ø WPA-PSK/TKIP
Ø WPA-PSK/AES
Ø WPA2-PSK/TKIP
Ø WPA2-PSK/AES
2.5. 省电机制
ESP8266 IOT 支持三种省电模式:
模式
|
Modem-Sleep
|
Light-Sleep
|
Deep-Sleep
|
动作
|
关闭 WiFi Modem 电路;
CPU 和其他外设正常运行。
|
关闭 WiFi Modem 电路、晶振和 PLL ;
CPU 和其他外设处于时钟暂停待机状态。
|
仅 RTC 电路工作,关闭其他电路,芯片处于极低功耗待机状态。
|
电流
|
10~20mA
|
0.5mA
|
10~20uA
|
唤醒
|
可唤醒
|
可唤醒
|
无法唤醒,设备依照设定,定时醒来。
|
应用场景
|
用于CPU需要一直工作的场景。
如 PWM 或 I2S 应用等。
如果没有数据传输,可根据 802.11标准
(如 U-APSD),关闭WiFi Modem电路来省电。
例如,在DTIM3时,每 sleep 300ms,醒来3ms接收AP 的Beacon包等,整体平均电流约15mA。
|
用于 CPU 可暂停的应用。
如 WiFi 开关。
如果没有数据传输,可根据 802.11标准(如 U-APSD),关
闭WiFi Modem电路,并暂停CPU来省电。
例如,在 DTIM3时,每 sleep 300ms,醒来3mS接收AP的Beacon包等,则整体平均电流约 0.9mA。
|
用于不需一直保持WiFi连接,很长时间才发送一次数据包的应用。
如每100 秒测量一次温度的传感器。
例如,每300S 醒来后需 0.3~1s 连上AP发送数据,则整体平均电流可远小于1mA。
|