ENGINNERS ESP8266 NodeMCU 开发板
物联网 (IoT) 一直是技术领域的热门领域。 它改变了我们的工作方式。 物理对象和数字世界现在比以往任何时候都更加紧密。 牢记这一点,Espressif Systems(一家位于上海的半导体公司)以令人难以置信的价格发布了一款可爱的、一口大小的支持 WiFi 的微控制器 - ESP8266! 只需不到 3 美元,它就可以从世界任何地方监视和控制事物——几乎适用于任何物联网项目。
该开发板配备了包含 ESP12 芯片的 ESP-8266E 模块,该芯片具有 Tensilica Xtensa® 32 位 LX106 RISC 微处理器,可在 80 至 160 MHz 可调时钟频率下运行并支持 RTOS。
ESP-12E 芯片
- Tensilica Xtensa® 32 位 LX106
- 80 至 160 MHz 时钟频率。
- 128kB 内部 RAM
- 4MB 外置闪存
- 802.11b/g/n Wi-Fi 收发器
还有 128 KB RAM 和 4MB 闪存(用于程序和数据存储),足以应付组成的大字符串 web 页面、JSON/XML 数据以及我们现在扔给 IoT 设备的所有内容。 ESP8266 集成 802.11b/g/n HT40 Wi-Fi 收发器,因此它不仅可以连接 WiFi 网络并与互联网交互,还可以建立自己的网络,让其他设备直接连接到它。 这使得 ESP8266 NodeMCU 更加通用。
电源要求
作为营业额tagESP8266 的 e 范围是 3V 到 3.6V,板子带有一个 LDO voltage 调节器保持音量tage 稳定在 3.3V。 它可以可靠地提供高达 600mA 的电流,这在 ESP8266 在射频传输期间拉动高达 80mA 的情况下应该绰绰有余。 稳压器的输出也断开到电路板的一侧并标记为 3V3。 该引脚可用于为外部组件供电。
电源要求
- 操作量tage:2.5V 至 3.6V
- 板载 3.3V 600mA 稳压器
- 80mA 工作电流
- 睡眠模式下为 20 μA
ESP8266 NodeMCU 的电源通过板载 MicroB USB 连接器供电。 或者,如果您有一个经过调节的 5V 电压tage 源,VIN 引脚可用于直接为 ESP8266 及其外设供电。
警告: ESP8266 需要 3.3V 电源和 3.3V 逻辑电平进行通信。 GPIO 引脚不能承受 5V! 如果您想将电路板与 5V(或更高)组件连接,则需要进行一些电平转换。
外设和 I/O
ESP8266 NodeMCU 共有 17 个 GPIO 引脚,分接到开发板两侧的排针。 这些引脚可以分配给各种外围任务,包括:
- ADC 通道——一个 10 位 ADC 通道。
- UART 接口——UART 接口用于串行加载代码。
- PWM 输出——用于调光 LED 或控制电机的 PWM 引脚。
- SPI、I2C 和 I2S 接口——用于连接各种传感器和外围设备的 SPI 和 I2C 接口。
- I2S 接口——I2S 接口,如果你想为你的项目添加声音。
多路复用 I/O
- 1 个 ADC 通道
- 2个UART接口
- 4个PWM输出
- SPI、I2C 和 I2S 接口
得益于 ESP8266 的引脚复用功能(多个外设复用在单个 GPIO 引脚上)。 这意味着单个 GPIO 引脚可以充当 PWM/UART/SPI。
板载开关和 LED 指示灯
ESP8266 NodeMCU 有两个按钮。 左上角标记为 RST 的是 Reset 按钮,当然用于重置 ESP8266 芯片。 左下角的另一个 FLASH 按钮是升级固件时使用的下载按钮。
开关和指示灯
- RST – 重置 ESP8266 芯片
- FLASH – 下载新程序
- 蓝色 LED – 用户可编程
该板还具有一个用户可编程的 LED 指示灯,并连接到板的 D0 引脚。
串行通信
该板包含 Silicon Labs 的 CP2102 USB 转 UART 桥接控制器,可将 USB 信号转换为串行信号,并允许您的计算机对 ESP8266 芯片进行编程和通信。
串行通信
- CP2102 USB 转 UART 转换器
- 4.5 Mbps 通信速度
- 流量控制支持
如果您的 PC 上安装了旧版本的 CP2102 驱动程序,我们建议您立即升级。
CP2102驱动升级链接—— https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
ESP8266 NodeMCU 引脚分配
ESP8266 NodeMCU 共有 30 个引脚将其与外界连接。 连接如下:
为简单起见,我们将制作具有相似功能的引脚组。
电源引脚 有四个电源引脚,即。 一个 VIN 引脚和三个 3.3V 引脚。 VIN 引脚可用于直接为 ESP8266 及其外围设备供电,如果您有稳压 5V 电压tage 源。 3.3V 引脚是板载 vol 的输出tage 调节器。 这些引脚可用于为外部组件供电。
GND 是 ESP8266 NodeMCU 开发板的接地引脚。 I2C 引脚用于连接项目中的各种 I2C 传感器和外围设备。 支持 I2C Master 和 I2C Slave。 I2C接口功能可以编程实现,时钟频率最高为100 kHz。 需要注意的是,I2C 时钟频率应高于从设备的最慢时钟频率。
GPIO 引脚 ESP8266 NodeMCU 有 17 个 GPIO 引脚,可通过编程方式分配给 I2C、I2S、UART、PWM、IR 遥控器、LED 灯和按钮等各种功能。 每个数字使能 GPIO 都可以配置为内部上拉或下拉,或设置为高阻抗。 当配置为输入时,也可以设置为边沿触发或电平触发以产生 CPU 中断。
ADC 通道 NodeMCU 嵌入了一个 10 位精度的 SAR ADC。 这两个功能可以使用 ADC 来实现,即。 测试电源电压tagVDD3P3 引脚的 e 和测试输入 voltagTOUT 引脚的 e。 但是,它们不能同时实施。
UART 引脚 ESP8266 NodeMCU 有 2 个 UART 接口,即 UART0 和 UART1,提供异步通信(RS232 和 RS485),通信速率最高可达 4.5 Mbps。 UART0(TXD0、RXD0、RST0 和 CTS0 引脚)可用于通信。 它支持流体控制。 但是,UART1(TXD1 引脚)只有数据传输信号,所以通常用于打印日志。
SPI 引脚 ESP8266 在从模式和主模式下具有两个 SPI(SPI 和 HSPI)。 这些 SPI 还支持以下通用 SPI 功能:
- SPI格式传输的4种时序模式
- 高达 80 MHz 和 80 MHz 的分频时钟
- 高达 64 字节的 FIFO
SDIO 引脚 ESP8266 具有安全数字输入/输出接口 (SDIO),用于直接连接 SD 卡。 支持 4 位 25 MHz SDIO v1.1 和 4 位 50 MHz SDIO v2.0。
PWM 引脚 该板具有 4 个脉冲宽度调制 (PWM) 通道。 PWM 输出可通过编程实现并用于驱动数字电机和 LED。 PWM 频率范围可在 1000 μs 至 10000 μs 之间调整,即在 100 Hz 和 1 kHz 之间。
控制销 用于控制ESP8266。 这些引脚包括芯片使能引脚 (EN)、复位引脚 (RST) 和 WAKE 引脚。
- EN 引脚——当 EN 引脚拉高时,ESP8266 芯片被启用。 当拉低时,芯片以最小功率工作。
- RST 引脚 – RST 引脚用于复位 ESP8266 芯片。
- WAKE 引脚——唤醒引脚用于将芯片从深度睡眠状态唤醒。
ESP8266 开发平台
现在,让我们继续讨论有趣的事情! 有多种开发平台可用于对 ESP8266 进行编程。 您可以使用 Espruino – JavaScript SDK 和紧密模拟 Node.js 的固件,或使用 Mongoose OS – 物联网设备的操作系统(Espressif Systems 和 Google Cloud IoT 推荐的平台)或使用 Espressif 提供的软件开发工具包 (SDK)或维基百科上列出的平台之一。 幸运的是,令人惊叹的 ESP8266 社区通过创建 Arduino 附加组件使 IDE 选择更进一步。 如果您刚刚开始对 ESP8266 进行编程,这是我们推荐的开始环境,也是我们将在本教程中记录的环境。
这个适用于 Arduino 的 ESP8266 附加组件基于 Ivan Grokhotkov 和 ESP8266 社区其他成员的出色工作。 查看 ESP8266 Arduino GitHub 存储库了解更多信息。
在 Windows 操作系统上安装 ESP8266 内核
让我们继续安装 ESP8266 Arduino 内核。 首先是在您的 PC 上安装最新的 Arduino IDE(Arduino 1.6.4 或更高版本)。 如果没有,我们建议立即升级。
Arduino IDE 的链接 – https://www.arduino.cc/en/software
首先,我们需要使用自定义更新董事会经理 URL. 打开 Arduino IDE 并转到 File > 偏好。 然后复制到下面 URL 进入额外的董事会经理 URLs 位于窗口底部的文本框: http://arduino.esp8266.com/stable/package_esp8266com_index.json
点击确定。 然后通过转到工具 > 板 > 板管理器导航到板管理器。 除了标准的 Arduino 板之外,还应该有几个新条目。 通过键入 esp8266 过滤您的搜索。 单击该条目并选择安装。
ESP8266 的板定义和工具包括一套全新的 gcc、g++ 和其他相当大的编译二进制文件,因此下载和安装可能需要几分钟(存档 file 约为 110MB)。 安装完成后,条目旁边将出现一个小的 INSTALLED 文本。 您现在可以关闭 Board Manager
阿杜诺前ample:眨眼
为确保正确设置 ESP8266 Arduino 内核和 NodeMCU,我们将上传最简单的草图 – The Blink! 我们将使用板载 LED 进行此测试。 正如本教程前面提到的,电路板的 D0 引脚连接到板载蓝色 LED 并且是用户可编程的。 完美的! 在我们开始上传草图和玩 LED 之前,我们需要确保在 Arduino IDE 中正确选择了电路板。 打开 Arduino IDE 并在 Arduino IDE > Tools > Board 菜单下选择 NodeMCU 0.9 (ESP-12 Module) 选项。
现在,通过 micro-B USB 电缆将 ESP8266 NodeMCU 插入计算机。 插入电路板后,应为其分配一个唯一的 COM 端口。 在 Windows 机器上,这将类似于 COM#,而在 Mac/Linux 计算机上,它将以 /dev/tty.usbserial-XXXXXX 的形式出现。 在 Arduino IDE > Tools > Port 菜单下选择这个串口。 同时选择上传速度:115200
警告: 选择板子、选择COM口和选择上传速度时需要多加注意。 如果上传新草图失败,您可能会收到 espcomm_upload_mem 错误。
完成后,尝试前amp下面的草图。
无效设置()
{pinMode(D0, OUTPUT);}无效循环()
{digitalWrite(D0, 高);
延迟(500);
数字写入(D0,低);
延迟(500);
上传代码后,LED 将开始闪烁。 您可能需要点击 RST 按钮让您的 ESP8266 开始运行草图。
文件/资源
![]() |
ENGINNERS ESP8266 NodeMCU 开发板 [pdf] 指示 ESP8266 NodeMCU 开发板, ESP8266, NodeMCU 开发板 |