


Двухъядерный микроконтроллер 240 МГц с встроенными WiFi и Bluetooth для IoT-проектов
ESP-WROOM-32 (ESP-32S) CP2102 – это мощная плата разработчика на базе модуля ESP-WROOM-32 с микроконтроллером ESP32, сочетающая высокую производительность со встроенными модулями WiFi и Bluetooth. Наличие USB-UART конвертера CP2102 обеспечивает простое программирование через обычный USB-кабель. Двухъядерный процессор Tensilica LX6 с частотой до 240 МГц, 4 МБ флеш-памяти и 520 КБ SRAM предоставляют непревзойденные возможности для разработки сложных IoT-решений, систем домашней автоматизации, носимых гаджетов и многозадачных проектов. Уникальное сочетание высокой вычислительной мощности, богатой периферии и энергоэффективности делает эту плату незаменимым инструментом как для новичков, так и для опытных разработчиков.
Систем умного дома
Мониторинга окружающей среды
Управления робототехникой
Носимых гаджетов
Промышленной автоматизации
Сетевых веб-серверов
Характеристика | ESP32 | ESP8266 | Arduino UNO | Raspberry Pi Zero W |
---|---|---|---|---|
Процессор | Dual Core 240 МГц | Single Core 80 МГц | Single Core 16 МГц | Single Core 1 ГГц |
ОЗУ | 520 КБ | 80 КБ | 2 КБ | 512 МБ |
Флеш-память | 4 МБ | 1-4 МБ | 32 КБ | microSD карта |
WiFi | Встроенный | Встроенный | Требуется модуль | Встроенный |
Bluetooth | Встроенный | Отсутствует | Требуется модуль | Встроенный |
GPIO пины | 34 | 17 | 14 | 40 |
АЦП | 2 × 12-бит | 1 × 10-бит | 6 × 10-бит | Отсутствует |
Энергопотребление | Низкое | Низкое | Низкое | Высокое |
Преимущества | Многозадачность, WiFi+BT | Компактность, цена | Простота, экосистема | Полноценная ОС |
ESP32 предлагает уникальные возможности энергосбережения, что делает его идеальным для проектов, работающих от батареи. Управляя различными режимами питания, можно достичь оптимального баланса между производительностью и временем автономной работы.
Потребление: ~160-260 мА
Оба ядра активны, WiFi/BT включены, полная функциональность для максимальной производительности.
Потребление: ~3-20 мА
CPU выключено, но RTC активно, память сохраняется, возможность пробуждения по таймеру или GPIO.
Потребление: ~10-50 мкА
Только RTC активно, возможность пробуждения по таймеру, сенсорам или внешнему сигналу.
С помощью правильной настройки и программирования ESP32 может работать от обычной батареи 18650 в течение нескольких месяцев, периодически просыпаясь для считывания данных с сенсоров и их отправки через WiFi.
ESP-WROOM-32 (ESP-32S) CP2102 – это мощная, универсальная и доступная платформа для разработки IoT-проектов любой сложности. Сочетание надежной беспроводной связи, высокой вычислительной мощности и энергоэффективности делает эту плату незаменимым инструментом для инновационных решений. Начните разработку собственных интеллектуальных устройств уже сегодня!
ЗАКАЗАТЬ СЕЙЧАСНет вопросов о данном товаре, станьте первым и задайте свой вопрос.
Wi-Fi/Bluetooth, 4MB Flash, для IoT и DIY-проектов
ESP-WROOM-32 (ESP-32S) — это мощный модуль на базе двухъядерного процессора ESP32 с встроенными модулями Wi-Fi и Bluetooth, что делает его идеальным выбором для разнообразных IoT проектов.
flowchart TD subgraph ESP32["ESP-WROOM-32 (ESP-32S) с CP2102"] direction TB subgraph Components["Основные компоненты"] ESP["ESP32
двухъядерный процессор"] CP["CP2102
USB-UART конвертер"] AMS["AMS1117
стабилизатор 3.3В"] LUSB["MicroUSB
порт"] FLASH["4MB Flash
память"] ANT["Wi-Fi/BT
антенна"] BOOT["Кнопка BOOT/FLASH
(GPIO0)"] EN["Кнопка EN
(RESET)"] LED["Светодиод
(GPIO2)"] end subgraph Pins["Выводы"] direction TB subgraph LeftPins["Левая сторона"] direction TB L1["3V3"] --- L2["EN"] --- L3["VP"] --- L4["VN"] --- L5["IO34"] --- L6["IO35"] --- L7["IO32"] --- L8["IO33"] --- L9["IO25"] --- L10["IO26"] --- L11["IO27"] --- L12["IO14"] --- L13["IO12"] --- L14["GND"] --- L15["IO13"] end subgraph RightPins["Правая сторона"] direction TB R1["VIN"] --- R2["GND"] --- R3["IO23"] --- R4["IO22"] --- R5["IO1"] --- R6["IO3"] --- R7["IO21"] --- R8["GND"] --- R9["IO19"] --- R10["IO18"] --- R11["IO5"] --- R12["IO17"] --- R13["IO16"] --- R14["IO4"] --- R15["IO0"] --- R16["IO2"] --- R17["IO15"] --- R18["GND"] --- R19["3V3"] end end end classDef comp fill:#b3e0ff,stroke:#333,stroke-width:2px classDef pin fill:#f96,stroke:#333,stroke-width:2px class ESP,CP,AMS,LUSB,FLASH,ANT,BOOT,EN,LED comp class L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12,L13,L14,L15,R1,R2,R3,R4,R5,R6,R7,R8,R9,R10,R11,R12,R13,R14,R15,R16,R17,R18,R19 pin
Вывод | Функция | Примечания |
---|---|---|
3V3 | Питание 3.3В | Выход внутреннего стабилизатора |
EN (Enable) | Сигнал включения | Уровень LOW выключает ESP32 |
VP (GPIO36) | Аналоговый вход 1 | Высокочувствительный АЦП |
VN (GPIO39) | Аналоговый вход 2 | Высокочувствительный АЦП |
IO34-IO39 | Входные GPIO | Только входные, без внутренних подтягивающих резисторов |
IO0 | GPIO / Boot режим | LOW при загрузке = режим прошивки |
IO2 | GPIO / LED | Часто подключён к встроенному светодиоду |
VIN | Вход питания | 5-12В, соединён с USB через диод |
flowchart LR PC["Компьютер
USB-порт"] --> |"Micro-USB
кабель"| ESP32["ESP-WROOM-32
Micro-USB порт"] subgraph Internal["Внутренние соединения в ESP-WROOM-32"] direction TB USBP["Micro-USB
порт"] --> CP2102["CP2102
USB-UART
конвертер"] CP2102 --> |"UART
(TX/RX)"| ESP32Core["ESP32
процессор"] CP2102 --> |"DTR/RTS"| AutoReset["Схема
авто-сброса"] AutoReset --> |"EN/GPIO0"| ESP32Core USBP --> |"5V"| AMS1117["AMS1117
3.3V стабилизатор"] AMS1117 --> |"3.3V"| ESP32Core end ESP32 --- Internal classDef pc fill:#f9f,stroke:#333,stroke-width:2px classDef board fill:#9cf,stroke:#333,stroke-width:2px classDef comp fill:#fc9,stroke:#333,stroke-width:2px class PC pc class ESP32 board class USBP,CP2102,ESP32Core,AutoReset,AMS1117 comp
Большинство современных операционных систем автоматически устанавливают драйверы для CP2102, но если ваша плата не определяется, выполните следующие шаги:
Для macOS драйверы можно найти на том же сайте Silicon Labs. В большинстве дистрибутивов Linux CP2102 поддерживается из коробки, но могут потребоваться права для доступа к последовательному порту:
flowchart TD A["Откройте VS Code"] --> B["Нажмите на иконку PlatformIO"] B --> C["Выберите 'New Project'"] C --> D["Заполните данные проекта:"] D --> D1["Name: ESP32_Blink"] D --> D2["Board: DOIT ESP32 DEVKIT V1"] D --> D3["Framework: Arduino"] D --> E["Нажмите 'Finish'"] E --> F["Дождитесь завершения
создания проекта"]
sequenceDiagram participant User as Пользователь participant IDE as PlatformIO IDE participant ESP as ESP32 Note over User,ESP: Если процесс загрузки останавливается на "Connecting..." User->>IDE: Нажимает "Upload" IDE->>ESP: Попытка подключения (не удаётся) Note over IDE: Ждёт соединения... User->>ESP: Нажимает и удерживает кнопку BOOT User->>ESP: Нажимает кнопку EN (Reset), не отпуская BOOT User->>ESP: Отпускает кнопку EN User->>ESP: Отпускает кнопку BOOT ESP->>IDE: Режим загрузки активирован IDE->>ESP: Передача прошивки IDE->>User: Сообщение об успехе [SUCCESS]
Следующий скетч демонстрирует, как использовать модуль Wi-Fi ESP32 для сканирования доступных сетей:
Этот пример демонстрирует, как подключить ESP32 к Wi-Fi сети:
Для подключения к ESP32 через Bluetooth:
ESP32 имеет несколько каналов аналого-цифрового преобразования. Вот пример считывания напряжения с аналогового входа:
ESP32 имеет 16 каналов ШИМ, которые можно настроить на разные частоты и разрешение:
ESP32 имеет два 8-битных канала DAC на пинах GPIO25 (DAC1) и GPIO26 (DAC2):
ESP32 имеет двухъядерный процессор и поддерживает реальную многозадачность с помощью FreeRTOS:
setCpuFrequencyMhz(80)
для снижения тактовой частоты, когда не нужна полная мощность.esp_light_sleep_start()
вместо глубокого сна, когда нужно быстро "проснуться" без перезагрузки.ESP.getFreeHeap()
.flowchart TD ESP32[ESP-WROOM-32] --> Sensors["Сенсоры
(DHT22, BMP280, etc.)"] ESP32 --> Actuators["Исполнительные устройства
(Реле, Моторы)"] ESP32 --> Display["Дисплеи
(OLED, TFT)"] ESP32 --> |"Wi-Fi
Bluetooth"| Connectivity{"Подключение"} Connectivity --> |"Local"| LocalDevices["Локальные устройства
(Смартфон, ПК)"] Connectivity --> |"Internet"| Cloud["Облачные сервисы
(AWS IoT, ThingSpeak)"] Cloud --> Dashboard["Веб-дашборды
Мобильные приложения"] classDef esp32 fill:#f96,stroke:#333,stroke-width:2px classDef devices fill:#9cf,stroke:#333,stroke-width:2px classDef cloud fill:#f9f,stroke:#333,stroke-width:2px class ESP32 esp32 class Sensors,Actuators,Display,LocalDevices devices class Cloud,Dashboard cloud
Проблема | Возможные причины | Решение |
---|---|---|
Ошибка "Connecting..." | Плата не в режиме загрузки | Удерживайте кнопку BOOT, нажмите и отпустите EN, затем отпустите BOOT |
Ошибка "A fatal error occurred: Failed to connect to ESP32" | Проблемы с драйвером или подключением | Проверьте кабель, установите/переустановите драйверы CP2102 |
Ошибка компиляции с Arduino.h | Неправильно выбрана плата | Убедитесь, что выбрана ESP32 в настройках проекта |
Ошибка "Brownout detector" | Недостаточное питание | Используйте качественный кабель, другой USB-порт или внешнее питание через VIN |
Проблема | Возможные причины | Решение |
---|---|---|
Непостоянное подключение | Слабый сигнал или нестабильное питание | Переместите ближе к точке доступа, проверьте питание |
Wi-Fi не подключается | Неправильные данные или несовместимость | Проверьте SSID и пароль, попробуйте подключиться к другой сети |
Медленное подключение | Конфликт с Bluetooth или перегрузка | Отключите Bluetooth, если он не используется |
Проблемы с подключением к некоторым сетям | Ограничения корпоративного Wi-Fi | Используйте WPA2 Personal или создайте собственную точку доступа |
ESP.getFreeHeap()
.