ESP32

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая 178.66.157.110 (обсуждение) в 20:00, 28 мая 2022. Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
ESP32

ESP32 — серия недорогих микросхем с малым энергопотреблением компании Espressif Systems. Представляют собой систему на кристалле с интегрированным контроллерами радиосвязи Wi-Fi, Bluetooth и Thread. В сериях ESP32 и ESP32-S используются процессорные ядра с архитектурой компании Tensilica, а в сериях ESP32-C и ESP32-H – ядра с открытой архитектурой RISC-V.

В микросхему интегрирован радиочастотный тракт: симметрирующий трансформатор, встроенные антенные коммутаторы, радиочастотные компоненты, малошумящий усилитель, усилитель мощности, фильтры и модули управления питанием. ESP32 создан и разработан компанией, расположенной в Шанхае, а производится компанией TSMC по техпроцессу 40 нм и 28 нм. Серия является преемником микросхем ESP8266.

Особенности

Функциональная блок-схема ESP32.

Серии ESP32 и ESP32-S включают в себя:[1]

  • Микроконтроллер и управление
    • Tensilica Xtensa LX6 двухъядерный (или одноядерный) 32-разрядный процессор, с тактовой частотой 160 или 240 МГц и производительностью до 600 DMIPS (Dhrystone MIPS)
    • Сопроцессор с ультранизким энергопотреблением
  • Память: 520 КБ памяти SRAM
  • Беспроводная связь:
  • Периферийные интерфейсы:
    • 12-разрядный АЦП до 18 каналов
    • 2 × 8 бит ЦАПа
    • 10 × портов для подключения емкостных датчиков (измеряющие ёмкость GPIO)
    • Датчик температуры[источник не указан 2096 дней] отсутствует. Информация о нем удалена из спецификации V2.2[2]
    • 4 × SPI мастер-интерфейса (ведущие устройства)
    • 2 × I²S мастер-интерфейса
    • 2 × I²C мастер-интерфейса
    • 3 × UART интерфейса
    • SD/SDIO/CE-ATA/MMC/ eMMC хост-контроллер
    • SDIO/SPI слейв-контроллеры (ведомые устройства)
    • Ethernet MAC interface с выделенным DMA и IEEE 1588 Precision Time Protocol support
    • CAN bus 2.0
    • ИК дистанционное управление (передатчик/приемник, до 8 каналов)
    • Возможность подключения двигателей и светодиодов через ШИМ-выход
    • Датчик Холла
    • Аналоговый предусилитель низкого энергопотребления
  • Безопасность:
  • Управление питанием:
    • Линейный регулятор с низким уровнем падения напряжения
    • Индивидуальнное питание для RTC
    • потребление 5-2,5 мкА в режиме «глубокий сон»
    • Пробуждение по прерыванию от GPIO, таймера, измерению АЦП, прерыванию емкостного сенсорного датчика
    • Рабочее напряжение от 2,2 в до 3,6 В
    • От −40 °C до + 125 °C рабочая температура
    • Максимальная скорость передачи данных 150 Мбит/с при 11n HT40, 72 Мбит/с при 11n HT20, 54 Мбит/с @ 11g, и 11 Мбит/с при 11b
    • Максимальная мощность передачи 19,5 дБм @ 11b, 16,5 дБм @ 11 г, 15,5 дБм @ 11n
    • Минимальная чувствительность приемника-98 дБм
    • Устойчивая пропускная способность UDP 135 Мбит/с


Wi-fi
802.11 n (2.4 GHz), up to 150 Mbps
802.11 e: QoS for wireless multimedia technology
WMM-PS, UAPSD
A-MPDU and A-MSDU aggregation
Block ACK
Fragmentation and defragmentation
Automatic Beacon monitoring/scanning
802.11 i security features: pre-authentication and TSN
Wi-Fi Protected Access (WPA)/WPA2/WPA2-Enterprise/Wi-Fi Protected Setup (WPS)
Infrastructure BSS Station mode/SoftAP mode
Wi-Fi Direct (P2P), P2P Discovery, P2P Group Owner mode and P2P Power Management
UMA compliant and certified
Antenna diversity and selection
Compliant with Bluetooth v4.2 BR/EDR and BLE specification
Bluetooth
Class-1, class-2 and class-3 transmitter without external power amplifier
Enhanced power control
+10 dBm transmitting power
NZIF receiver with −98 dBm sensitivity
Adaptive Frequency Hopping (AFH)
Standard HCI based on SDIO/SPI/UART
High speed UART HCI, up to 4 Mbps
BT 4.2 controller and host stack
Service Discover Protocol (SDP)
General Access Profile (GAP)
Security Manage Protocol (SMP)
Bluetooth Low Energy (BLE)
ATT/GATT
HID
All GATT-based profile supported
SPP-Like GATT-based profile
BLE Beacon
A2DP/AVRCP/SPP, HSP/HFP, RFCOMM
CVSD and SBC for audio codec
Bluetooth Piconet and Scatternet


ESP32 vs ESP8266:

ESP32 ESP8266
Ethernet MAC Interface Не поддерживается
GPIOs ‎для 10 сенсорных датчиков‎ Не поддерживается
Temperatur-Sensor (on-chip) Не поддерживается
‎Функционал пульта дистанционного управления‎ Не поддерживается
Hall-Sensor Не поддерживается
Digital-to-Analog Converter (DAC) Не поддерживается
CAN 2.0 Не поддерживается
Аналогово-Цифровой Преобразователь (АЦП): 16 Каналов с 12-Бит

SAR-ADC с малошумящим усилителем (Low-Noise Amplifier, LNA)

10-bit АЦП, без LNA
2 I2C-Интерфейс 1 I2C-Интерфейс
16 каналов для ШИМ (до 78 кГц при 10-битной точности) 8 каналов для ШИМ (до 1кГц)
GPIOs (General-Purpose Input/Output, интерфейс ввода/вывода общего назначения): 36 GPIOs: 17
4 SPI-Интерфейса с Quad-SPI и максимальной частотой 80 MHz 3 SPI-Интерфейса с Quad-SPI и максимальной частотой 80 MHz


Корпус планарный (QFN)

ESP32 выпускается в планарном корпусе (QFN) с 48 контактами по периметру и одним большим теплоотводом по центру, выполняющим одновременно функцию сигнальной земли.

Версии

SoC ESP32 выпускается в планарном корпусе QFN размерами 6×6 мм либо 5×5 мм.

Модель Количество ядер Встроенная флеш-память, МБ Размер микросхемы Описание
ESP31B 2 0 6×6 мм Предрелизный SoC для бета-тестов; снят с производства
ESP32-D0WDQ6 2 0 6×6 мм Первая версия чипа ESP32
ESP32‑D0WD 2 0 5×5 мм Чип с уменьшенным корпусом, аналог ESP32-D0WDQ6
ESP32‑D2WD 2 2 5×5 мм Вариант с 2 МБ (16 Мбит) встроенной флеш-памяти
ESP32‑S0WD 1 0 5×5 мм Вариант с одним ядром

ESP32-D0WDQ6 содержит два малой мощности Xtensa® 32-бит LX6 микропроцессоров. Внутренняя память включает:

  • 448 КБ ПЗУ для загрузки и основных функций.
  • 520 Кб (8 КБ RTC быстрая память в комплекте) on-chip SRAM для данных и инструкций.
  • 8 КБ SRAM в RTC, который называется RTC быстрой памяти и хранения данных используется для; это для доступа к нему со стороны Главный процессор во время загрузки RTC из режима глубокого сна.
  • 8 КБ SRAM в RTC, который называется медленной памятью RTC и может быть доступен со-процессором во время режима глубокого сна.
  • 1 кбит eFuse, из которых 256 бит используются для системы (MAC-адрес и конфигурация чипа) и остальные 768 бит зарезервированы для клиентских приложений, включая шифрование флэш-памяти и идентификатор чипа.

[Внешняя FLASH и SRAM]

ESP32 поддерживает до четырех банков 16-Мб внешней flash QSPI и SRAM с аппаратным шифрованием на основе AES с защитой пользовательский программ и данных.

ESP32 может получить доступ к внешней flash QSPI и SRAM через скоростные каналы.

  • До 16 Мб внешней флэш-памяти сопоставлены с кодовым пространством ЦП, поддерживающим 8, 16 и 32-бит доступа. Поддерживается выполнение кода.
  • До 8 Мб внешней flash/SRAM карты памяти на ЦП пространства данных, поддержка 8, 16 и3 2-бит доступа. Чтение данных поддерживается на флэш-памяти и SRAM. Запись данных поддерживается на SRAM.
  • ESP32-WROVER интегрирует 4-16 Мб внешней SPI flash. 4-мб SPI flash может быть карта памяти на процессор пространство, поддерживающие 8, 16 и 32 бит доступа. Поддерживается выполнение кода.
  • В дополнение к 4-16 МБ SPI flash, ESP32-WROVER также интегрирует 4-8 Мб PSRAM для большего пространства памяти.

[Кварцевые генераторы]

  • Микропрограмма ESP32 Wi-Fi/BT может поддерживать только кварцевый генератор 40 МГц.

[RTC и управление низким потреблением]

С использованием современных технологий управления питанием ESP32 может переключаться между различными режимами питания (См. таблицу ниже).

[Мощность режимы/Power modes]

  • Active mode / Активный режим: чип радио включен. Чип может получать, передавать или слушать.
  • Modem-sleep mode / Режим сна модема: ЦП работает и часы настраиваются. Базовая полоса Wi-Fi/BluetoothИ радио отключено.
  • Light-sleep mode / Режим сна: ЦП приостановлен. Память RTC и периферийные устройства RTC, а также ULPСопроцессор работает. Все события пробуждения (MAC, хост, таймер RTC или внешние прерывания) будут пробуждать до chip.
  • Deep-sleep mode / Режим глубокого сна: Только память RTC и периферийные устройства RTC включены. Wi-Fi и Bluetooth данные соединения хранятся в памяти RTC. Сопроцессор ULP может работать.
  • Hibernation mode / Режим гибернации: внутренний 8 МГц осциллятор и co-процессор ULP отключены. RTC восстановления памяти выключена. Только один таймер RTC на медленных часах и некоторые GPIOs RTC активны. Таймер RTC или GPIOs RTC могут разбудить чип в режиме спячки.

[Сон/Sleep Patterns]

  • Association sleep pattern / Шаблон Association sleep: режим питания переключается между активным режимом, модемом и LightsleepРежим во время этого сна CPU, Wi-Fi, Bluetooth и радио просыпаются на заранее определенном Интервалы для сохранения соединения Wi-Fi/BT живыми.
  • ULP sensor-monitored pattern / ULP датчик-контролируемый шаблоном: Главный процессор находится в режиме глубокого сна. Комбинированный процессор ULPИзмерение датчиков и Пробуждение основной системы на основе данных, собранных с датчиков.
Режимами питания при сне
Power mod Active Modem-sleep Light-sleep Deep-sleep Hibernation
Sleep pattern Association sleep pattern ULP sensor-monitored pattern -
CPU ON ON PAUSE OFF OFF
Wi-Fi/BT baseband and radio ON OFF OFF OFF OFF
RTC memory and RTC peripherals ON ON ON ON OFF
ULP co-processor ON ON ON ON/OFF OFF

Модули

Модуль ESP32-PICO-D4 системы в корпусе (system-in-a-package) сочетает в себе микросхему ESP32, кварцевый генератор, микросхему флэш-памяти, фильтрующие конденсаторы и радиочастотные контакты. Применяется корпус QFN размером 7×7 мм.

Модель Количество ядер Встроенная флеш-память, МБ Размер модуля Описание
ESP32-PICO-D4 2 4 7×7 mm2 Includes ESP32 chip, crystal oscillator, flash memory, filter capacitors, and RF matching links.[3]

Печатные платы

Модульные SMT-платы

Модули SMT-платы на основе ESP32 содержат ESP32 SoC и предназначены для легкого интегрирования в другие платы. Измеряемые инвертированные F-антенные конструкции используются для трассировки антенны PCB на модулях, перечисленных ниже. Кроме флэш-памяти, некоторые модули включают псевдостатическую оперативную память (pSRAM).

Производитель Название Антенна Флеш-память, МБ pSRAM, МБ Описание
Espressif ESP-WROOM-03 PCB trace 4 0 Не производится, для бета-тестов.[4][5][6][7][8] FCC Part 15.247 tested (FCC ID: 2AC7Z-ESP32).[9]
ESP32-WROOM-32 PCB trace 4 0 Первый публичный вариант модуля от Espressif.[10] FCC Part 15.247 tested (FCC ID: 2AC7Z-ESPWROOM32).[11] Based on ESP32-D0WDQ6 chip. Originally named «ESP32-WROOM-32».
ESP32-WROOM-32D PCB trace 4 0 Обновление ESP-WROOM-32 с применением чипа ESP32-D0WD вместо ESP32-D0WDQ6.[12] Изначально «ESP-WROOM-32D».
ESP32-SOLO-1 PCB trace 4 0 Аналог ESP32-WROOM-32D с одноядерным ESP32-S0WD вместо ESP32-D0WD с 2 ядрами
ESP32-WROOM-32U U.FL socket 4 0 Альтернатива ESP-WROOM-32D с коннектором U.FL для подключения внешней антенны.[12]
ESP32-WROVER PCB trace 4 4 Модуль ESP32 с 4 МБ pSRAM памяти от Espressif. Имеет сертификацию «FCC part 15.247» (FCC ID 2AC7Z-ESP32WROVER). Использует 40 МГц кварцевый генератор, не использует U.FL разъём. Построен на микросхеме ESP32-D0WDQ6.
ESP32-WROVER-I U.FL socket, PCB trace 4 4 Вариант ESP32-WROVER с U.FL разъёмом. Антенна на печатной плате (PCB trace) выполнена, но не подключена по умолчанию.
ESP32-WROVER-B PCB trace 4 8 Вариант ESP32-WROVER на 8 МБ pSRAM вместо 4 и ESP32-D0WD (вместо ESP32-D0WDQ6). FCC part 15.247 (FCC ID 2AC7Z-ESP32WROVERB). Без U.FL. (Есть опция с флеш-памятью на 8 или 16 МБ)
ESP32-WROVER-IB U.FL socket, PCB trace 4 8 Вариант ESP32-WROVER-B с U.FL
Banana pi BPI:bit PCB trace 4 0 Аналог ESP-WROOM-32 от banana pi.
BPI-UNO32 U.FL socket, PCB trace 4 4 Аналог ESP32-WROVER от banana pi, совместимость с arduino
Ai-Thinker ESP32-S PCB trace 4 0 Вариант от Ai-Thinker, сходный с ESP-WROOM-32[13]
ESP32-A1S U.FL socket, PCB trace 4 4 Аналог ESP32-WROVER от Ai-Thinker
AnalogLamb ESP-32S-ALB PCB trace 4 0 Копия ESP-32S (совместим с ESP-WROOM-32).[14]
ALB-WROOM PCB trace 16 0 Вариант ESP-32S-ALB на 16 МБ флеш-памяти.[14]
ALB32-WROVER PCB trace 4 4 ESP32 модуль с 4 МБ pSRAM в размерах ESP-WROOM-32.[15]
DFRobot ESP-WROOM-32 PCB trace 4 0 Аналог ESP-WROOM-32 без FCC сертификата, применяет 26 МГц или 32 кГц генератор.[16]
eBox & Widora ESP32-Bit Ceramic, U.FL socket 4 0 Керамическая антенна и U.FL.
Goouuu Tech ESP-32F PCB trace 4 0 Аналог ESP-WROOM-32, есть FCC проверка (ID 2AM77-ESP-32F).
IntoRobot W32 PCB trace 4 0 Сходный с ESP-WROOM-32 модуль с иной цоколевкой контактов.[17]
W33 Ceramic, U.FL socket 4 0 Аналог IntoRobot W32 с другим антенным хозяйством
ITEAD PSH-C32 PCB trace 1[18] 0 Модуль с небольшим размером флеш-памяти и нестандартным размером.[19]
Pycom[20] W01 (Not included.) 8 4 OEM-вариант WiPy 2.0. Реализует Wi-Fi и Bluetooth. FCC ID 2AJMTWIPY01R.
L01 (Not included.) 8 4 OEM-вариант LoPy. Реализует Wi-Fi, Bluetooth и LoRa. FCC ID 2AJMTLOPY01R.
L04 (Not included.) 8 4 OEM-вариант LoPy4. Реализует Wi-Fi, Bluetooth, LoRa и Sigfox.
S01 (Not included.) 8 4 Снят с производства. Вариант SiPy с Wi-Fi, Bluetooth, Sigfox (14 dBm и 22 dBm).
G01 (Not included.) 8 4 OEM-вариант GPy. Содержит модуль сотовой связи LTE-CAT M1/NB1, Wi-Fi и Bluetooth.
u-blox NINA-W131 (Not included.) 2 0 Серия u-blox NINA-W13.[21]
NINA-W132 PIFA 2 0 Серия u-blox NINA-W13.[21] Встроенная антенна — Planar implementation[англ.] (PIFA) — выполнена из гнутого листового металла с фигурным вырезом, а не в виде дорожки на печатной плате (PCB trace).
ESP32 Espressif ESP-WROOM-32

Платы для разработки и другие платы

Платы для разработки имеют расширенную коммутацию и функциональность, обычно построены на базе плат с ESP32 и облегчают их использование для разработки (и особенно для макетирования).

Программирование

Языки программирования, платформы и среды, используемые для программирования ESP32:

  • Arduino IDE с ESP32 Arduino Core
  • Espressif IoT Development Framework — Официальная Espressif разработка для ESP32.
  • Espruino — JavaScript SDK, эмулятор Node.js.
  • Lua RTOS.
  • Mongoose OS[англ.][1] — Операционная система для носимой электроники, рекомендована Espressif Systems,[22] AWS IoT,[23] and Google Cloud IoT.[24]
  • mruby[англ.] для ESP32
  • PlatformIO Ecosystem и IDE
  • Pymakr IDE — IDE предназначен для использования с устройствами Pycom;
  • Simba Embedded Programming Platform
  • Whitecat Ecosystem Blockly основана на Web IDE
  • MicroPython
  • Zerynth — Python для IoT и микроконтроллеров, включая ESP32.
  • OWLOS — сетевая операционная система с открытым исходным кодом для управления IoT устройствами.

Использование

Коммерческое и промышленное использование ESP32:

Использование в коммерческих устройствах

  • Светодиодный браслет IoT группы Alibaba, который использовался участниками ежегодного сбора в 2017 году. Каждый браслет работает как пиксель, принимающей команды для координированного управления светодиодным светом. Это позволяет формировать «живой беспроводной экран».[25]
  • DingTalk’s M1 — биометрическая система отслеживания посещаемости.[26]
  • LIFX Mini — серия дистанционно управляемых светодиодных ламп.[27]
  • Pium — домашний аромат и ароматерапия.[28]

Промышленные устройства

  • TECHBASE’s Moduino X серий X1 и X2 модули ESP32-WROVER для индустриальной автоматизации и мониторинга, поддерживается цифровой и аналоговый ввод-вывод и различные сетевые интерфейсы.[29]

Примечания

  1. ESP32 Datasheet. Espressif Systems (6 марта 2017). Дата обращения: 14 марта 2017. Архивировано 25 июля 2018 года.
  2. Espressif Systems. ESP32 Series Datasheet. Espressif Systems 53. — «Deleted content about temperature sensor;». Дата обращения: 2 октября 2018. Архивировано 25 июля 2018 года.
  3. Espressif Systems. ESP32-PICO-D4 Datasheet (21 августа 2017). Дата обращения: 21 июля 2017. Архивировано 22 августа 2017 года.
  4. Jim Lindblom. Enginursday: First Impressions of the ESP32. Sparkfun Electronics (21 января 2016). Дата обращения: 1 сентября 2016. Архивировано 13 февраля 2016 года.
  5. Limor Fried (2015-12-22). Playing With New ESP32 Beta Module. Adafruit Industries. Дата обращения: 2 сентября 2016. Архивная копия от 29 августа 2016 на Wayback Machine
  6. Martin Harizanov. ESP32 (18 декабря 2015). Дата обращения: 2 сентября 2016. Архивировано 21 октября 2016 года.
  7. Brian Benchoff (2015-12-23). "The ESP32 Beta Units Arrive". Hackaday. Архивировано 8 сентября 2016. Дата обращения: 2 сентября 2016.
  8. Markus Ulsass (2015-12-25). "ESP32 beta module HiRes pictures". Архивировано 13 октября 2016. Дата обращения: 2 сентября 2016.
  9. FCC Part 15.247 Test Report for Espressif Systems (Shanghai) Pte. Ltd. Bay Area Compliance Laboratories Corp. (17 февраля 2016). Дата обращения: 2 сентября 2016. Архивировано 15 сентября 2016 года.
  10. ESP-WROOM-32 Datasheet. Espressif Systems (22 августа 2016). Дата обращения: 2 сентября 2016. Архивировано из оригинала 13 сентября 2016 года.
  11. FCC Part 15.247 Test Report for Espressif Systems (Shanghai) Pte. Ltd. Bay Area Compliance Laboratories Corp. (10 ноября 2016). Дата обращения: 15 декабря 2016. Архивировано 20 декабря 2016 года.
  12. 1 2 ESP-WROOM-32D/ESP32-WROOM-32U Datasheet. Espressif Systems. Дата обращения: 28 ноября 2017. Архивировано из оригинала 3 декабря 2017 года.
  13. Baoshi. Ai-Thinker ESP-32S Decap Photos (11 октября 2016). Дата обращения: 22 октября 2016. Архивировано 3 мая 2022 года.
  14. 1 2 ESP-32S-ALB/ALB-WROOM. AnalogLamb. Дата обращения: 2 октября 2018. Архивировано из оригинала 20 июля 2017 года.
  15. ESP32-WROVER – ESP32 Module with 32Mb Flash and 32Mb PSRAM. AnalogLamb. Дата обращения: 2 октября 2018. Архивировано из оригинала 12 апреля 2019 года.
  16. (SKU:TEL0111)ESP32 WiFi&Bluetooth Module/ESP-WROOM-32. DFRobot. Дата обращения: 7 мая 2022. Архивировано 3 октября 2018 года.
  17. 硬件功能 (Hardware Function). IntoRobot. Дата обращения: 2 октября 2018. Архивировано из оригинала 30 мая 2018 года.
  18. ITEAD. PSH-C32 Schematic (15 февраля 2017). Дата обращения: 23 февраля 2017. Архивировано из оригинала 24 февраля 2017 года.
  19. ITEAD. PSH-C32. Дата обращения: 23 февраля 2017. Архивировано из оригинала 23 февраля 2017 года.
  20. Pycom. Pycom OEM Products. Дата обращения: 14 марта 2017. Архивировано 1 декабря 2017 года.
  21. 1 2 NINA-W13 series. u-blox. Дата обращения: 2 октября 2018. Архивировано 3 октября 2018 года.
  22. Third-Party Platforms That Support Espressif Hardware. Espressif Systems. Дата обращения: 20 октября 2017. Архивировано 17 октября 2017 года.
  23. Tim Mattison. AWS IoT on Mongoose OS, Part 1 (13 апреля 2017). Дата обращения: 2 октября 2018. Архивировано 12 ноября 2020 года.
  24. Google Cloud IoT Partners. Google. Дата обращения: 20 октября 2017. Архивировано 18 сентября 2017 года.
  25. Alibaba's IoT Wrist Bands Based on ESP32. Espressif Systems (30 сентября 2017). Дата обращения: 3 октября 2018. Архивировано из оригинала 5 января 2018 года.
  26. DingTalk's New Biometric Attendance Monitor Based on ESP32. Espressif Systems (2 июня 2017). Дата обращения: 3 октября 2018. Архивировано 8 января 2018 года.
  27. ESP32net. FCC internal photos exhibit for the LIFX Mini Wi-Fi LED light ( FCC ID 2AA53-MINI) show inclusion of ESP32 ... [твит]. Твиттер (7 ноября 2017).
  28. New ESP32-based Aromatherapy Device. Espressif Systems (31 июля 2017). Дата обращения: 3 октября 2018. Архивировано 4 октября 2018 года.
  29. Moduino X Series - Industrial IoT module based on ESP32. TECHBASE Group. Дата обращения: 2 октября 2018. Архивировано 15 апреля 2018 года.

Ссылки