ESP 32
ESP32 — это многофункциональный, недорогой и энергоэффективный микроконтроллер на базе системы-на-кристалле (SoC), разработанный компанией Espressif Systems. Он широко используется в проектах IoT (Интернета вещей) благодаря встроенным модулям Wi-Fi и Bluetooth/BLE, двухъядерному процессору и поддержке множества периферийных устройств. Ниже приведено подробное описание его характеристик, применения и экосистемы:
Основные особенности
Двухъядерный процессор: Два 32-битных ядра Xtensa LX6 (до 240 МГц), поддерживающие многозадачность (например, работу под управлением FreeRTOS).
Беспроводные интерфейсы: Wi-Fi (802.11 b/g/n): Режимы станции, точки доступа (AP) и их комбинация.
Bluetooth (Classic и BLE 4.2+): Идеален для IoT-устройств с коротким радиусом действия.
Память: 520 КБ SRAM, 448 КБ ROM (зависит от модуля).
Поддержка внешней flash/SRAM через SPI.
Периферия: GPIO (до 34 выводов), 12-битный АЦП, ЦАП, сенсоры касания, ШИМ, I2C, SPI, UART, CAN и др.
Встроенный датчик Холла, температурный сенсор (в некоторых версиях), емкостные сенсоры.
Низкое энергопотребление: Режимы сна (например, глубокий сон с потреблением ~5 мкА) для работы от батарей.
Ультранизкопотребляющий сопроцессор (ULP) для простых задач в режиме сна.
Безопасность: Защищенная загрузка, шифрование флеш-памяти, аппаратное ускорение криптографии (AES, SHA-2, RSA).
Варианты чипов: ESP32-S2 (одноядерный, USB OTG), ESP32-C3 (ядро RISC-V), ESP32-S3 (двухъядерный + векторные инструкции).
Популярные платы на базе ESP32: ESP32-DevKitC: Официальная плата от Espressif с минимальной периферией.
NodeMCU-32S: Включает USB-to-UART и поддержку Lua.
TTGO T-Display: С интегрированным OLED-экраном.
Adafruit Feather ESP32: Компактный дизайн с поддержкой батарей.
M5Stack: Модульная система с дисплеями и датчиками.
Языки/Фреймворки: Arduino IDE: Упрощает разработку с библиотеками для Wi-Fi, BLE и датчиков.
ESP-IDF (IoT Development Framework): Официальный SDK для продвинутой разработки (C/C++).
MicroPython: Среда для скриптов на Python.
PlatformIO: Кроссплатформенная IDE с поддержкой ESP32.
Библиотеки: Готовые решения для AWS IoT, MQTT, HTTP, OTA-обновлений и драйверов периферии.
Отладка: Поддержка JTAG (через ESP-Prog или сторонние инструменты).
IoT-устройства: Умные датчики (температуры, движения), носимые устройства, умные розетки.
Беспроводная связь: BLE-маяки, Wi-Fi-сети с топологией mesh, шлюзы.
Промышленная автоматизация: Удаленный мониторинг, ПЛК (программируемые логические контроллеры), связь через CAN.
Робототехника: Управление моторами, обработка данных с датчиков, параллельные задачи на двух ядрах.
Прототипирование: Быстрое создание прототипов для проверки концепций.
Преимущества перед ESP8266
Двухъядерный процессор для многозадачности.
Больше GPIO и периферии (сенсоры касания, CAN).
Встроенный Bluetooth/BLE.
Улучшенные функции безопасности.
Меньшее энергопотребление в режиме сна.
Сложность: Работа с RTOS или беспроводными стеками может быть сложной для новичков.
Оптимизация энергопотребления: Требует тщательной настройки для работы от батарей.
Различия в железе: Распиновка и функции отличаются у разных модулей (сверяйтесь с даташитами!).
Подготовка железа:
Подключите плату через USB и установите драйверы (CP210x или CH340).
* Если в Диспетчере оборудования на компьютере у вас не определяется устройство, то ставим драйвера!
Программная настройка:
Установите Arduino IDE или VS Code с PlatformIO. Ставим плату esp 32 и выбираем Wrover Module
Используйте примеры: WiFiScan, BLE_Server, DeepSleep.
ESP32 имеет несколько встроенных датчиков, которые можно использовать в проектах. Вот основные из них:
1. Датчик температуры (Temperature Sensor)
Назначение: Измеряет температуру внутри чипа ESP32, а не окружающей среды.
Особенности:
Показания зависят от нагрева самого микроконтроллера при работе, поэтому точность для внешней среды низкая.
Диапазон: примерно от -40°C до 125°C (теоретически), но на практике точность ограничена.
Пример использования: Мониторинг перегрева платы, оценка нагрузки на процессор.
Для управления светодиодом на ESP32 через Bluetooth с телефона можно использовать Bluetooth Serial. Вот пошаговая инструкция:
1. Необходимые компоненты
Плата ESP32
Светодиод встроенный на ножке D2, если внешний, то надо будет резистор 220–330 Ом и провода.
Смартфон с поддержкой Bluetooth
Приложение для работы с Bluetooth Serial (например, Serial Bluetooth Terminal для Android).