ESP12E WiFi模块引脚功能_使用方法_应用示例
ESP12E是当今大多数产品中最常见的WiFi模块,这些模块尺寸更小,并且具有板载引脚的内部编程能力。它有一个内部32位微控制器,可以执行多种通信和输出信号。该模块可使用多种语言进行编程,并且在大多数现代物联网设备中,ESP12E可用于创建网络集线器和设备。
ESP12E将所有流行的网络协议和安全加密集成在一个芯片中,速度快、功耗低。ESP12E模块因其价格便宜而广受欢迎,并且与任何其他模块相比,其Ping值较小。
引脚配置功能
ESP12E WiFi模块是WiFi通信的最佳模块,这是因为其板载微控制器会生成多个引脚。ESP12E的引脚是一个独立的设备,它就像一个小尺寸的带WiFi的微控制器。共有22个引脚,提供多种通信方式,分别是:
1、GPIO引脚
共有11个I/O引脚。因此,这些引脚可以执行多种输入和输出功能,可与所有TTL/CMOS器件连接。所有GPIO引脚均为:
- 引脚4 – GPIO16
- 引脚5 – GPIO14
- 引脚6 – GPIO12
- 引脚7 – GPIO13
- 引脚11 – GPIO9
- 引脚12 – GPIO10
- 引脚16 – GPIO15
- 引脚18 – GPIO0
- 引脚19 – GPIO4
- 引脚20 – GPIO5
2、UART通信引脚
ESP12E可在许多IDE中通过UART通信进行编程,这些UART引脚在编程后仍可使用,分别是:
- 引脚21 – RXD0
- 引脚22 – TXD0
- 引脚15 – RTS
- 引脚13 – CTS
- 引脚2 – TXD
3、SPI通信引脚
该模块提供与其自身的直接SPI通信。该通信使用四个引脚来进行正确的通信,它们是:
- 引脚12 – CS0
- 引脚10 – MISO
- 引脚9 – MOSI
- 引脚14 – SCLK
4、I2C
在ESP12E中,一些GPIO引脚可用于I2C通信。在这种通信中,只有两个引脚有助于通信。一个用于时钟,另一个用于数据。因此,在ESP中,两者都是:
- 引脚14 – SCL
- 引脚2 – SDA
5、I2S
它并不常见于所有设备。I2S有助于收集、处理和传输音频信号。I2S使用6个引脚,在ESP12E 中,所有I2S引脚为:
- 引脚12 – I2SI_DATA
- 引脚13 – I2SI_BCK
- 引脚14 – I2SI_WS
- 引脚15 – I2SO_BCK
- 引脚3 – I2SO_DATA
- 引脚2 – I2SO_WS
6、PWM
在每个控制器中,ESP12E都可以通过编程将其每个引脚转换为PWM引脚。PWM信号有三个引脚,分别都是:
- 引脚12
- 引脚13
- 引脚15
7、红外接口
IR接口使用需要NEC编码的调制和解调。ESP12E可使用IR接口引脚进行连接,并且特定于这些引脚:
- 引脚5 – IR_R
- 引脚14 – IR_T
8、ADC
该器件有一个10位ADC引脚,使用0-1V范围将模拟数据转换为数字数据:
- 引脚2
9、电源和控制引脚
电源: ESP12E使用VCC引脚为整个模块供电,接地引脚与电源和其它设备共地:
- 引脚8 – VCC
- 引脚15 – GND
使能:设备具有内部数字开关,使能引脚将接收数字高电平信号以激活芯片:
- 引脚3
重置:要重置设备,数字将有助于通过低状态重置它,复位引脚是模块的第一个引脚是:
- 引脚1
功能特点
特征 | 描述 |
---|---|
无线网络协议 | 802.11b/g/n |
频率 | 2.4-2.5GHz |
安全协议 | WPA |
加密类型 | WEP/TKIP/AES |
网络协议 | IPv4、TCP/UDP/FTP/HTTP |
无线网络 | STA / AP / STA + AP |
电源输入 | 3.0–3.3V |
工作温度容量 | -40–125°C |
通用输入输出接口 | 11个频道 |
SPI | 1个频道 |
I2C | 1个频道 |
I2S | 1个频道 |
红外接口 | 1个频道 |
串口 | 1个频道 |
脉宽调制 | 3个频道 |
串口调试 | 可用的 |
以太网 | 无法使用 |
无线上网 | 可用 |
大师模式 | 可用 |
从机模式 | 可用 |
混合模式 | 可用 |
蓝牙 | 无法使用 |
板载天线 | 可用 |
功能框图
使用方法
ESP12E是ESP8266系列。因此,Arduino IDE对ESP12E使用“Generic ESP8266 ”。要上传设备,Arduino仅需要UART通信引脚RX和TX。ESP12E使用过程中不会出现任何库。该模块可以使用与Arduino板相同的语言进行操作;PIN将有助于通过Arduino编程进行通信。例如,要使用内置LED,以下代码将有助于使LED闪烁。
void setup() { pinMode(LED_BUILTIN, OUTPUT); } void loop() { digitalWrite(LED_BUILTIN, LOW); delay(1000); digitalWrite(LED_BUILTIN, HIGH); delay1000); }
在Arduino IDE中,如果内置LED未知,LED_BUILTIN将帮助初始化LED引脚。ESP12E中还有其它协议,但为了控制它们,Arduino使用外部库。ESP12E将需要外部库来控制其它协议,如SPI、WIFI、I2C、HTTP等。该模块可用作主站和从站。要使用主/从,需要不同的编程。以下是ESP8266中最常见的库。
#include <ESP8266WiFi.h> #include <ESP8266mDNS.h> #include <WiFiClient.h> #include "ESP8266WiFi.h" #include <ESP8266WiFiMesh.h> #include <ESP8266WiFiMulti.h> #include <LittleFS.h>
命令模式
ESP12E模块还带有命令模式,它默认带有命令模式。命令模式使用115200的波特率。Arduino COM监视器可用于命令模式。以下命令将有助于向模块发送数据以影响默认设置。
-
AT – 检查模块连接性。
AT+RST– 通过命令重置ESP12E。 - AT+GMR – 生成已安装固件的列表。
- AT+CWLAP – 列出ESP范围内的所有可用网络。
- AT+CWJAP=” SSID” ,” PASSWORD” – 添加WiFi网络的手动数据以连接模块。
- AT+CWJAP=””,”” – 断开模块与任何WiFi连接。
- AT+CIFSR – 生成连接 IP 和 Mac 地址。
- AT+CWMODE= – 设置ESP12E的WiFi模式。
- AT+CW 模式?– 它将决定ESP的功能以及它将如何发挥作用。如果WiFi需要充当WiFi站,则需要 1。为了使其成为WiFi接入点,2会这样做。该模块可以充当混合体,使其混合使用3与命令,WiFi将有助于实现它。
Arduino接口示例
在此示例中,将使用该模块作为WiFi接入点。模块会有其WiFi名称和WiFi密码。所有的WiFi站都可以直接使用密码与其连接。
以下代码将有助于使ESP12E作为WiFi接入点:
#include <ESP8266WiFi.h> void setup() { Serial.begin(115200); WiFi.softAP("SSID-NAME-HERE", "WIFI-PASS(8 MAX)"); void loop() { Serial.printf("Stations connected = %d\n", WiFi.softAPgetStationNum()); delay(3000); }库将要求将WiFi模式设为接入点。WiFi.softAP将有助于描述WiFi名称和密码。 完成后,循环将有一个WiFi.softAPgetStationNum()来获取已连接设备数量的详细信息。连接设备后,除非断开连接,否则该值将会增加。该模块可以使用另一种方法作为混合体,即通过AT命令:
AT+CWMODE=2是该命令将有助于使模块成为无需编程的接入点。其它诸如设备名称和密码之类的内容将能够使用以下命令进行更改/制作:
AT+CWJAP=" SSID"," PASSWORD"注意:SSID应替换为WiFi名称,密码应替换为WiFi密码,并且最多应为8个数字。
封装设计参数
ESP12E和ESP12F的区别
ESP12E和ESP12F都是基于ESP8266芯片的WiFi模块,它们之间的区别在于以下几个方面:
-
外部天线:ESP12F具有外部IPEX天线连接器,可以连接外部天线,而ESP12E没有这个连接器。这使得ESP12F在信号强度和传输距离方面可能有更好的表现。
-
引脚布局:ESP12E和ESP12F的引脚布局有一些微小的差异。这意味着将它们集成到特定的电路板设计中时,需要留意引脚的分配和连接。
-
封装尺寸:ESP12E和ESP12F的封装尺寸略有不同。ESP12E的尺寸为24mm x 16mm,而ESP12F的尺寸为24mm x 18mm。这可能会对特定应用中的布局和封装造成一些影响。
需要注意的是,除了上述区别,ESP12E和ESP12F在性能和功能方面基本上是相同的。它们都支持802.11 b/g/n无线标准,具有相似的处理能力和内存容量,并且可以通过串行接口与其他设备进行通信。选择使用哪个模块应该根据具体的项目需求和可用的硬件资源来决定。
总结
ESP12E是一款基于ESP8266芯片的Wi-Fi模块,由乐鑫(Espressif)公司制造。它是ESP8266模块系列中的一员,具有小尺寸和丰富的GPIO引脚,适合嵌入式应用和物联网项目。
ESP12E模块集成了处理器、Wi-Fi模块和网络协议栈,可以作为独立的Wi-Fi模块或嵌入到其他设备中使用。它支持802.11 b/g/n无线标准,具有良好的连接稳定性和传输性能。ESP12E模块可以通过串行接口与其他设备进行通信,如Arduino等。
该模块的尺寸为24mm x 16mm,尽管相对小巧,但具备较强的功能和灵活性。它可用于各种应用,如物联网设备、智能家居、传感器网络和远程监控等。开发者可以使用ESP12E模块来实现设备与互联网的连接,并通过Wi-Fi实现数据传输和远程控制。