ESP32 微控制器系列指南

描述

2024-05-29 Don Wilcher

[微控制器]

ESP32 微控制器已成为物联网 (IoT) 和嵌入式控制器领域的核心部分。 ESP32 生态系统的制造商 Espressif Systems 创建了功能强大且价格实惠的片上系统 (SoC) 设备,将 Wi-Fi、蓝牙和中央处理单元 (CPU) 集成到一个微控制器封装中,使这些 SoC 成为理想的选择适用于嵌入式控制器和物联网项目。

对于工程师或制造商来说,熟悉各种 ESP32 硬件平台和软件包可能是一项艰巨的任务。本指南将提供与 ESP32 微控制器生态系统相关的技术规格、开发套件和软件设计套件 (SDK) 的信息。有了这样的指南,您将能够根据您的特定项目要求选择合适的 ESP32 微控制器设备。

微控制器*典型的 ESP32 微控制器。图片由[维基百科提供]

ESP32 概述

凭借较低的制造开发成本和高效的处理器,您可以将 ESP32 部署到各种物联网和控制器项目中。 ESP32 微控制器的一些主要功能包括 Wi-Fi、蓝牙和小外形尺寸。总的来说,这里是 ESP32 微控制器的简要概述。

坚固的设计

ESP32 微控制器具有动态移除外部电路接口的能力。即使在工业环境中,此功能也可确保其可靠运行。 ESP32 的工作温度范围为 -40°C 至 +125°C。该微控制器可由+3.3V的电源电压供电,这使得开发无线遥感和控制器应用成为可能。

超低功耗

ESP32 专为便携式设备、可穿戴电子产品、智能控制器和物联网应用而设计。使用各种专有软件包,ESP32 微控制器实现了超低功耗。此外,ESP32 芯片还具有多种功耗模式、动态功耗调整和时钟门控功能。

高集成度

高水平的 SoC 集成允许 ESP32 中包含各种电子电路。 SoC高级集成包括以下板载电子电路。

  • 内置天线开关
  • 射频巴伦
  • 功率放大器
  • 低噪声接收放大器
  • 过滤器,以及
  • 电源管理模块

凭借这些特性、功能和多功能性,ESP32 微控制器生态系统可以为嵌入式应用提供最小的印刷电路板 (PCB) 空间要求。

微控制器ESP32 功能框图。图片由[Brian Krent(谈话·贡献)提供,CC0,来自 Wikimedia Commons]

混合 Wi-Fi、蓝牙和硬连线通信接口

您可以设置可由主机控制器使用 Wi-Fi 和蓝牙控制的无线系统或设备。这有助于降低通信系统的复杂性和主控制器CPU的开销。

ESP32 微控制器具有不同的通信接口,如 SPI、SDIO 和 I2C/UART。这些专用的硬连线接口为主机控制器提供其他通信方案来控制设备系统架构。

ESP32 架构

ESP32 架构基于 Xtensa LXn CPU 内核。 Xtensa CPU 内核采用模块化、灵活的 32 位精简指令集计算机 (RISC) 架构。 RISC 设备是一种微处理器架构,使用一组有效的编程指令。这一小组编程指令有助于 RISC 架构 Xtensa 处理器从小型无缓存控制器扩展到高性能数字信号处理器 (DSP)。

微控制器典型的RISC架构。图片由[javatpoint]提供。

Xtensa LXn CPU

如前所述,Xtensa LXn 具有各种 CPU 处理能力。以下是一些可用于 ESP32 微控制器的 Xtensa LXn CPU 的列表:

  • LX6 – Xtensa LX6 CPU 用于原始 ESP32 和 ESP32-S 微控制器系列的各个版本。 Xtensa LX6 是一款 32 位低功耗微处理器,具有双核和单核配置。 Xtensa LX6 CPU 为 ESP32 和 ESP32-S 微控制器变体提供性能和能效。
  • LX7 – LX7 处理器是 Xtensa LX6 CPU 的增强版本。 LX7 设备采用高效的 32 位处理器架构。可配置的 RISC、数据缓存和本地存储器都集成到 LX7 的芯片中。 ESP32-S2 和 ESP32-S3 微控制器使用 LX7 功能,这是对 LX6 架构的增强。

微控制器LX7处理器架构。图片由[Cadence]提供。

  • RISC-V 内核 – ESP32-C3 和 ESP32-C6 微控制器使用单核 32 位 RISC-V 处理器。免版税的开源指令集架构 (ISA) 消除了 ESP32-C3 和 ESP-C6 芯片制造的费用成本。 RISC 架构使用 5 个核心模块:硬连线控制单元 (HCU)、指令缓存、数据缓存、数据路径和内存。这 5 个核心块使用寄存器,从而为指定的微控制器提供合理的运行速度。

ESP32 子系列

如果您正在从事物联网、可穿戴设备或嵌入式控制器项目,有大量 ESP32 微控制器可供选择。下面,您将找到不同 ESP32 微控制器子系列的列表,及其功能以及可以使用它们创建的一些项目示例。

ESP32(原始变体)

  • 核心架构:Xtensa LX6(单核或双核)
  • 技术规格:
  1. 时钟速度:范围(例如,80 MHz - 240 MHz)。
  2. 内存:RAM 和 ROM 容量范围(例如,高达 520 KiB RAM、4 MB 闪存)。
  3. 具有 34 个可编程 GPIO、SPI、I2C、I2S、UART、ADC、电机 PWM、LED PWM
    一个。无线连接:Wi-Fi 和 BLE

b.电源管理:具有多种睡眠模式的低功耗操作

c.安全功能:基于硬件的安全性(例如安全启动、加密)

d.项目示例:智能家居气象站(利用双核进行高效处理)。

微控制器ESP32 开发套件M-1

ESP32-S 系列(后续产品)

  • 核心架构:Xtensa LX7(双核)- 改进的性能和安全性。
  • 变种:
  1. ESP32-S2:仅 Wi-Fi(无蓝牙)
  2. ESP32-S3:Wi-Fi 和 BLE
    一个。技术规格(一般 - S2 和 S3 之间可能略有不同)

我。与原始 ESP32 相比,时钟速度有所提高。

b. USB 支持。

c.内存:320KB SRAM、128K ROM

d.具有 43 个可编程 GPIO、SPI、I2C、I2S、UART、ADC、LED PWM

项目实例:

  • ESP32-S2:Wi-Fi 智能插头(单 LX7 核就足够了)。
  • ESP32-S3:可穿戴健身追踪器(双 LX7 内核用于实时处理)。

微控制器ESP32-S3 DevKitM-1

ESP32-C 系列(RISC-V 内核)

  • 核心架构:单核 32 位 RISC-V(成本可能更低)
  • 变种:
  1. ESP32-C3:Wi-Fi 和 BLE
  2. ESP32-C6(即将推出):详细信息尚未完全确认。
    一个。技术规格(一般 - C3 和 C6 之间可能有所不同)
  3. 时钟速度:可能与其他 ESP32 的范围相似(80 MHz - 240 MHz - C6 需要确认)。
  4. 内存:可能与 ESP32-C3 相似或容量有所增加(例如 ESP32-C3:高达 4MB 闪存、400 KiB RAM)
  5. 有 14 个可编程 GPIO、SPI、I2C、UART、LED PWM、ADC、
  • 无线连接 (C3):Wi-Fi 和 BLE(C6 需要确认)

项目示例 (ESP32-C3):无线土壤湿度传感器(成本敏感型应用)。

微控制器ESP32-C6 DevKitM-1

ESP32-H2(集成了 IEEE 802.15.4 连接和蓝牙 5 低功耗 (LE)。

  • 核心架构:单核、32 位 RISC-V 微控制器。
  • 变体:截至目前没有变体
  • 技术规格(一般)
  1. 时钟速度 -96 MHz
  2. 内存:320 KB SRAM,16 KB 高速缓存,128 KB ROM,4 MB 闪存
  3. 具有 19 个可编程 GPIO,支持 ADC
  4. SPI、UART、I2C、I2S、GDMA 和 LED PWM
  • 无线连接:IEEE 802.15.4(网状网络)和蓝牙 5 (LE)

项目示例(ESP32-H):智能农业系统(可以监控土壤、温度和光照水平等环境条件)。

微控制器ESP32-H2 开发套件M-1

ESP32-P4(双核RISCV CPU)

  • 具有 AI 指令扩展。
  • 高级内存子系统和集成高速外设
  • 面向即将到来的嵌入式应用时代
  • 具体应用领域:
  1. 人机界面 (HMI)
  2. 边缘计算
  3. IO 连接需求增加
  • ESP32-P4 开发套件即将推出

ESP32 软件开发套件 (SDK)

通过各种 ESP32 开发套件,乐鑫提供了丰富的编程工具资源。可从开源 GitHub 存储库下载适用于本指南中介绍的 ESP32 微控制器的 SDK。提供文档和示例代码,以确保可以轻松探索每个 ESP32 微控制器的主要功能。以下是 ESP32 微控制器生态系统可用 SDK 的简短列表。

  • ESP-IDF – 适用于 ESP32、ESP32-S、ESP32-C 和 ESP32-H 系列 SoC 的官方物联网开发框架。 SDK 允许在这些微控制器平台上构建典型或通用应用程序。 C 和 C++ 等传统编程语言用于使用 SDK 开发微控制器应用程序。
  • ESP-Matter – Matter 协议的软件实现是计算机软件保障 (CSA) 和公司成员的共同努力。这个由公司成员和 CSA 组成的联盟允许在 Android 和 iOS 控制器上实施设备。 ESP 微控制器在开源 Matter SDK 开发中发挥着不可或缺的作用。
  • Arduino-ESP SDK – 该 SDK 也称为 Arduino 核心,是 ESP32 的软件开发套件,允许开发人员对该微控制器生态系统进行编程。该核心包含在 Arduino 集成开发环境 (IDE) 中。最后,Arduino IDE 是软件库以及 ESP32 开发套件和板的示例代码的集合。

结论

ESP32 微控制器为工业和商业物联网应用提供多功能且强大的解决方案。 ESP32 生态系统集成了强大的处理能力、可靠的连接和先进的安全功能。无论是部署在节能传感器还是坚固耐用的工业监控系统中,ESP32 微控制器都能提供推动创新和应对物联网领域各种挑战所需的灵活性和性能。本指南概述了 ESP32 微控制器,包括其可编程平台、功能和特性,以帮助您为您的创新项目选择合适的设备。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分