В DIY-магазинах слово «Arduino» часто используют как название любого маленького контроллера. Это удобно, но технически неточно. Arduino — это прежде всего экосистема плат, библиотек и среды разработки. Внутри Arduino Uno стоит AVR-чип ATmega328P, в Arduino Nano Every — AVR ATmega4809, в Nano 33 IoT — Arm-чип SAMD21, а в Nano ESP32 — вообще ESP32-S3.
Микроконтроллер — это маленький компьютер на одной микросхеме. Внутри находятся процессор, память, GPIO, таймеры, АЦП, интерфейсы I2C/SPI/UART и другие блоки. Он запускает одну прошивку и обычно делает одну понятную вещь: читает датчики, управляет реле, показывает данные на экране, обслуживает кнопки, передаёт телеметрию или крутит двигатель.
Эта статья — не каталог всех тысяч чипов, которые существуют в мире. Это карта тех семейств, с которыми действительно сталкивается человек в современной DIY-разработке: на макетной плате, в Arduino IDE, PlatformIO, MicroPython, Zephyr, STM32CubeIDE или при разработке своей платы.
Сначала: не путай чип, модуль и плату
Одно и то же название в карточке товара может означать три разных вещи.
| Уровень | Пример | Что это |
|---|---|---|
| Микроконтроллер (MCU) | ESP32-S3, STM32F103, RP2040, ATmega328P | Сама микросхема с процессором и периферией |
| Радиомодуль | ESP32-WROOM-32, ESP32-C3-MINI-1, nRF52840-модуль | Чип плюс Flash, антенна, RF-обвязка, иногда экранировка |
| Плата разработки | ESP32 DevKit, Arduino Uno, Raspberry Pi Pico, RP2040-Zero | Модуль/чип, USB, стабилизатор, кнопки и разъёмы на готовой плате |
Для первого проекта обычно покупают плату разработки. Она уже умеет питаться от USB и прошиваться без программатора. Когда проект заработал и его нужно уменьшить, удешевить или выпустить серией, переходят на модуль либо разводят свою PCB с микроконтроллером.
Четыре вопроса перед выбором
Вместо «какой чип мощнее?» сначала ответь на эти вопросы.
- Нужна ли беспроводная связь? Wi-Fi, Bluetooth, Zigbee/Thread, LoRa или никакая.
- От чего будет питаться устройство? USB и розетка, Li-Ion, две батарейки AA или маленькая таблетка.
- Что нужно подключить? I2C-датчики, OLED, SD-карта, светодиодная лента, сервоприводы, CAN, дисплей, USB-клавиатура.
- В какой среде ты хочешь писать код? Arduino IDE, MicroPython/CircuitPython, C/C++ с SDK, PlatformIO, Zephyr, STM32CubeIDE, Rust.
После этого выбор обычно сужается до двух-трёх семейств.
Главная карта семейств
| Семейство | Производитель | Архитектура | Связь «из коробки» | Типичный сценарий |
|---|---|---|---|---|
| AVR | Microchip, раньше Atmel | 8-бит AVR | Обычно нет | Классический Arduino, простые 5-вольтовые проекты |
| ESP8266 | Espressif | 32-бит Xtensa | Wi-Fi 2,4 ГГц | Очень дешёвый Wi-Fi, старые IoT-проекты |
| ESP32 | Espressif | Xtensa или RISC-V, зависит от модели | Wi‑Fi, Bluetooth; у C6/H2 — 802.15.4 | IoT, Home Assistant, MQTT, веб-интерфейсы |
| RP2040 / RP2350 | Raspberry Pi | Arm Cortex-M0+ / Arm + RISC-V у RP2350 | Нет радио | USB, PIO, быстрые интерфейсы, контроллеры |
| STM32 | STMicroelectronics | Arm Cortex-M0+/M3/M4/M7/M33/M55 | В отдельных сериях — BLE/802.15.4 | Моторы, CAN, промышленная автоматика, свои платы |
| SAMD | Microchip | Arm Cortex-M0+/M4 | Обычно нет | Arduino Zero/MKR, Adafruit-платы, USB-устройства |
| nRF52 / nRF54 | Nordic Semiconductor | Arm Cortex-M4F / M33 и др. | Bluetooth LE, 802.15.4 у ряда моделей | Низкое потребление, BLE, Thread/Zigbee/Matter |
| PIC | Microchip | 8-/16-/32-бит PIC | Обычно нет | Обучение, простая автоматика, некоторые серийные устройства |
| MSPM0 / MSP430 | Texas Instruments | Arm Cortex-M0+ / 16-бит MSP430 | Обычно нет | Низкое потребление, аналоговые и промышленные задачи |
| RA / RL78 / RX | Renesas | Arm Cortex-M / proprietary | В отдельных сериях — радио | Промышленность, HMI, motor control, энергоэффективные устройства |
Семейства выше не конкурируют «в лоб» во всех задачах. ESP32 с Wi-Fi и STM32 для трёхфазного двигателя решают разные проблемы; nRF52 выбирают не потому, что он быстрее ESP32, а потому что Bluetooth-датчик от батарейки должен прожить месяцы или годы.
ESP: самый короткий путь к Wi-Fi и IoT
Производитель: Espressif Systems.
Что выбирают в DIY: ESP8266, классический ESP32, ESP32-C3, ESP32-S2, ESP32-S3, ESP32-C6, ESP32-H2.
ESP стал массовым благодаря тому, что объединил микроконтроллер, Wi-Fi-радио, Flash и антенну в доступном модуле. Не нужно отдельно поднимать сетевой стек, искать RF-разводку и сертифицировать свою антенну для домашнего прототипа: ESP32 DevKit уже даёт USB, питание и готовый радиомодуль.
Как ориентироваться в ESP-семействе
| Чип | Ядро | Беспроводные возможности | Когда выбирать |
|---|---|---|---|
| ESP8266 | Одно Xtensa LX106 | Wi-Fi 2,4 ГГц | Очень простой и дешёвый Wi-Fi, старые совместимые проекты |
| ESP32 (original) | 1–2 Xtensa LX6 | Wi-Fi + Bluetooth Classic/BLE | Универсальный «народный» ESP32, много примеров |
| ESP32-S2 | Одно Xtensa LX7 | Wi-Fi, USB OTG | Wi-Fi + нативный USB, когда Bluetooth не нужен |
| ESP32-S3 | 2 × Xtensa LX7 | Wi-Fi + BLE, USB OTG | Камеры, дисплеи, USB HID, большие проекты с PSRAM |
| ESP32-C3 | Одно RISC-V | Wi-Fi + BLE | Компактный, современный и недорогой IoT-узел |
| ESP32-C6 | RISC-V HP + LP | Wi-Fi 6 + BLE + Zigbee/Thread | Matter, Thread/Zigbee, современный умный дом |
| ESP32-H2 | RISC-V | BLE + Zigbee/Thread, без Wi-Fi | Низкопотребляющие 802.15.4-устройства |
ESP32-C6 особенно интересен для новых устройств умного дома: он объединяет Wi-Fi 6 в диапазоне 2,4 ГГц, Bluetooth LE и IEEE 802.15.4 — базу для Thread и Zigbee. У него высокопроизводительное RISC-V-ядро до 160 МГц, отдельное low-power-ядро, 512 КБ SRAM и внешняя Flash. Это не значит, что старый ESP32 «устарел»: для MQTT-реле, датчика температуры, веб-панели или контроллера ленты он по-прежнему отлично подходит.
Плюсы ESP
- Wi-Fi и Bluetooth в одной доступной плате.
- Огромное число библиотек, примеров, модулей и готовых корпусов.
- Arduino IDE, PlatformIO, ESP-IDF, MicroPython и CircuitPython для ряда моделей.
- Удобные протоколы для DIY: MQTT, HTTP, WebSocket, ESP-NOW, OTA.
- У многих моделей есть deep sleep и полезная периферия: RMT, I2S, TWAI/CAN, USB у новых семейств.
Что учитывать
- Почти все GPIO — только 3,3 В, 5 В напрямую подавать нельзя.
- Wi-Fi создаёт короткие пики потребления: слабое питание вызывает перезагрузки.
- Аналоговый вход и Wi-Fi могут иметь ограничения в зависимости от модели.
- Названия ESP32 похожи, но возможности отличаются: у ESP32-S2 нет Bluetooth, у ESP32-H2 нет Wi-Fi, старый ESP32 поддерживает Bluetooth Classic, а C3/C6 — только BLE.
- Для глубокого сна и батарейки нужно измерять ток конкретной платы: USB-UART, стабилизатор и светодиоды DevKit иногда потребляют больше самого чипа.
Бери ESP32, если: нужен Wi-Fi, MQTT, Home Assistant, web-панель, OTA, Bluetooth-управление или быстрый IoT-прототип.
Не бери ESP32 автоматически, если: Wi-Fi не нужен, устройство должно год работать от батарейки, а главная задача — точные аппаратные тайминги или USB-периферия. В таких случаях RP2040, nRF52 или STM32 могут быть проще и экономнее.
RP2040 и RP2350: USB, PIO и точный контроль пинов
Производитель: Raspberry Pi.
Платы: Raspberry Pi Pico, Pico W, RP2040-Zero, Seeed XIAO RP2040, Adafruit QT Py RP2040 и другие.
RP2040 — необычный микроконтроллер: Raspberry Pi не стал добавлять в него Wi-Fi или Bluetooth, зато сделал сильную периферию и программируемый ввод-вывод PIO. Внутри два Arm Cortex-M0+ до 133 МГц, 264 КБ SRAM, 30 GPIO, USB 1.1 host/device и восемь PIO state machine. Внешняя QSPI Flash выбирается производителем платы: у Raspberry Pi Pico и многих RP2040-Zero это 2 МБ, но на других платах объём отличается.
Чем хорош PIO
PIO — это маленькие специализированные автоматы, которые могут сами читать или генерировать точно рассчитанные последовательности сигналов. Основные ядра в это время продолжают выполнять код приложения.
PIO полезен для:
- адресных лент WS2812/NeoPixel;
- дополнительных UART/SPI-подобных интерфейсов;
- нестандартных шин и протоколов;
- точного захвата импульсов;
- LED-матриц, DVI и других задач с жёстким таймингом.
Это не «магическое ускорение всего». Для чтения кнопки, BME280 или реле PIO не нужен. Но когда проект упирается в тайминги, RP2040 часто оказывается заметно приятнее простых Arduino-плат.
RP2350 — следующее поколение
RP2350 — более новая линейка Raspberry Pi. Она добавляет больше памяти и GPIO в зависимости от варианта, больше PIO, современную архитектуру и аппаратные механизмы безопасности. В официальном сравнении Raspberry Pi у RP2040 указаны 264 КБ SRAM и 8 PIO state machine, а у RP2350 — 520 КБ SRAM и 12 PIO state machine.
Для новичка RP2040 остаётся более массовым и понятным: примеров и дешёвых плат пока больше. RP2350 выбирают, когда нужны дополнительные ресурсы и конкретные новые возможности платы.
Плюсы RP2040/RP2350
- Отличная работа с USB: HID-клавиатуры, MIDI, контроллеры, serial-устройства.
- PIO для нестандартных интерфейсов и точных временных последовательностей.
- Arduino, Pico SDK, MicroPython, CircuitPython, TinyUSB, Rust.
- Два ядра и хороший запас RAM для платы такого класса.
- Простая прошивка UF2: BOOTSEL → USB-диск → копирование файла.
Ограничения
- У RP2040 нет встроенного радио. Если нужна сеть, берут Pico W, внешний модуль или сразу ESP32.
- GPIO — 3,3 В.
- В самом RP2040 нет Flash: её объём зависит от конкретной платы.
- Нативный USB не заменяет Wi-Fi: для web-интерфейса и OTA нужна сеть.
Бери RP2040, если: делаешь USB-контроллер, макропад, MIDI, LED-проект, устройство со сложными таймингами или хочешь быстро писать на MicroPython без радиомодуля.
STM32: огромный конструктор для серьёзной периферии
Производитель: STMicroelectronics.
Что встречается в DIY: STM32F0/F1/F4, G0/G4, L0/L4/U5, H5/H7, WB/WBA, Nucleo, Discovery, Blue Pill, Black Pill.
STM32 — не один чип, а очень большое семейство Arm Cortex-M. В нём есть недорогие Cortex-M0+, массовые M3/M4, энергоэффективные серии, чипы для моторного управления, беспроводные варианты и мощные M7/M55. Поэтому вопрос «какой STM32?» почти всегда требует уточнения.
| Подсемейство | Идея | Типичные DIY-задачи |
|---|---|---|
| STM32F0 / G0 | Бюджетные Arm Cortex-M0+ | Замена AVR, датчики, простая автоматика |
| STM32F1 | Старое популярное семейство Cortex-M3 | Blue Pill, множество старых уроков и проектов |
| STM32F4 / G4 | Cortex-M4, DSP/FPU у многих моделей | Аудио, motor control, быстрые измерения, PID |
| STM32L0 / L4 / U5 | Низкое потребление | Автономные датчики, измерители, промышленная телеметрия |
| STM32H5 / H7 / N6 | Высокая производительность | Дисплеи, Ethernet, сложная обработка, edge AI у отдельных серий |
| STM32WB / WBA | Радио + Arm | Bluetooth LE, Zigbee, Thread, Matter у части моделей |
Почему STM32 любят инженеры
- Очень широкий выбор корпусов, памяти, напряжений и периферии.
- CAN/FDCAN, USB, Ethernet, SDIO, продвинутые таймеры, ADC/DAC, DMA, op-amp/comparator — в зависимости от модели.
- Сильная экосистема Nucleo/Discovery, ST-Link, STM32CubeIDE и STM32CubeMX.
- Хороший путь от макета к собственной плате и серийному устройству.
- Много вариантов для моторного управления, промышленности и измерительной техники.
Почему STM32 иногда не лучший первый выбор
- Маркировки сложнее, чем у ESP32:
STM32G431CBU6уже несёт информацию о серии, корпусе, памяти и температурном диапазоне. - Документации много, но нужно читать datasheet, reference manual и application notes.
- Одна библиотека может не подходить другой подсерии без правок.
- У дешёвых «Blue Pill» встречаются клоны и платы с разной реализацией USB/кварца.
Бери STM32, если: нужны быстрые таймеры, моторы, CAN, несколько ADC, промышленная периферия, надёжная собственная PCB или ты хочешь вырасти за пределы Arduino-библиотек.
AVR: классика Arduino
Производитель: Microchip, раньше Atmel.
Типовые чипы: ATmega328P, ATmega32U4, ATtiny85, ATtiny1616, ATmega4809.
Когда говорят «обычный Arduino», чаще всего имеют в виду ATmega328P из Arduino Uno/Nano. Это 8-битный AVR с 32 КБ Flash, 2 КБ SRAM, 1 КБ EEPROM, 23 GPIO, 10-битным ADC, UART, I2C и SPI. Его частота на Arduino Uno обычно 16 МГц.
По современным меркам цифры скромные. Но именно ограничения AVR делают его хорошим учебным инструментом: один поток кода, понятные таймеры, предсказуемое поведение, 5-вольтовая логика на классических платах и тысячи примеров.
Когда AVR — разумный выбор
- Простая автоматика без сети: кнопки, LED, реле, термометр, LCD 1602.
- Проект, где нужны 5-вольтовые сигналы без level shifter.
- Низкая цена и простота ремонта.
- Самодельная плата с ATtiny для одной функции: таймер, индикатор, простая подсветка, датчик.
- Обучение базам электроники и C++/Arduino.
Где AVR упирается в потолок
2 КБ SRAM заканчиваются очень быстро: большой экранный буфер, JSON, Wi-Fi, TLS, несколько библиотек или длинные строки способны заполнить память. Для сложных UI, сетевых протоколов и обработки данных AVR лучше заменить на ESP32, RP2040 или STM32.
Новые AVR семейства tinyAVR 0/1/2-series и megaAVR 0-series заметно современнее ATmega328P: у них лучше периферия, есть event system и более гибкие пины. Но старый ATmega328P всё ещё важен, потому что на нём построена огромная часть Arduino-мира.
Бери AVR, если: нужен понятный старт, 5-вольтовая плата, небольшой проект без сети и без тяжёлых библиотек.
SAMD: Arm-версия Arduino и дружба с USB
Производитель: Microchip.
Типовые чипы: ATSAMD21, ATSAMD51.
SAMD21 — 32-битный Arm Cortex-M0+ до 48 МГц, который встречается в Arduino Zero, MKR, Seeeduino XIAO SAMD21 и множестве Adafruit-плат. Это заметный шаг вверх относительно ATmega328P: больше RAM и Flash, 3,3-вольтовая логика, нативный USB, гибкая периферия.
SAMD51 — старшая линейка на Cortex-M4F, которую часто ставят в платы для дисплеев, аудио, USB и CircuitPython. В экосистеме Adafruit SAMD долго был «главным» чипом для CircuitPython, поэтому для него много библиотек, готовых плат и примеров.
Бери SAMD, если: нужна Arduino/CircuitPython-плата с качественным USB, хорошей поддержкой библиотек и без Wi-Fi; особенно если выбранная плата Adafruit/Seeed уже построена на SAMD.
Не выбирай только по бренду Arduino: современный RP2040 часто даёт больше RAM и производительности за меньшие деньги, а ESP32 добавляет сеть. У SAMD остаются сильные стороны в зрелых платах, нативном USB и совместимости с библиотеками.
nRF52 и nRF54: Bluetooth, батарейка и умный дом
Производитель: Nordic Semiconductor.
Типовые чипы: nRF52832, nRF52840, nRF5340, nRF54L15 и другие.
Если устройство должно работать от батарейки и общаться по Bluetooth Low Energy, Nordic — один из самых логичных вариантов. Эти чипы не пытаются быть дешёвым Wi-Fi-компьютером: их сильная сторона — радиостек, энергопотребление, стабильный BLE и протоколы 802.15.4.
nRF52840 — популярный ориентир для DIY и готовых устройств: Cortex-M4F 64 МГц, 1 МБ Flash, 256 КБ RAM, Bluetooth LE, Bluetooth Mesh, Thread, Zigbee, NFC-A, USB 2.0 Full Speed, 12-битный ADC и до 48 GPIO. Он поддерживает Bluetooth LE с 2 Мбит/с, long range и IEEE 802.15.4.
Где nRF особенно хорош
- BLE-датчик, кнопка, маяк, пульт или wearable от батарейки.
- Thread/Zigbee/Matter-устройства, особенно при использовании готового SDK/Zephyr.
- USB + BLE: контроллеры, клавиатуры, адаптеры.
- Устройства, которым важно просыпаться, коротко передавать данные и снова спать.
Что учитывать
- Wi-Fi у nRF52 обычно нет. Для облака нужен шлюз, телефон или отдельный радиомодуль.
- Экосистема сложнее Arduino: часто используют nRF Connect SDK на базе Zephyr.
- Сам чип и платы обычно дороже распространённых ESP32-C3.
- Для первой BLE-игрушки ESP32 может быть проще, но для долгой работы от батареи и качественного Bluetooth nRF часто выигрывает.
Бери nRF52/nRF54, если: главное — Bluetooth LE, автономность, Thread/Zigbee/Matter или профессиональный беспроводной датчик.
PIC: не исчез, просто живёт в другой части мира
Производитель: Microchip.
Линейки: PIC10/12/16/18, dsPIC, PIC24, PIC32.
PIC был одним из главных семейств для обучения и серийной электроники задолго до Arduino. В DIY-среде он виден реже AVR и ESP32, но в реальных приборах встречается постоянно: от простых контроллеров питания до производственной автоматики.
Microchip продолжает развивать 8-битные PIC и AVR параллельно; в текущем портфеле есть, например, PIC16 до 32 МГц и 28 КБ Flash, PIC18 до 64 МГц и 64 КБ Flash.
Почему PIC может быть интересен
- Большой ассортимент недорогих чипов в разных корпусах.
- Хорошая аналоговая периферия и специальные блоки у конкретных моделей.
- PIC16/PIC18 подходят для простых устройств, dsPIC — для DSP и моторного управления, PIC32 — для 32-битных задач.
- Удобен, если повторяешь существующую схему или работаешь в среде MPLAB X.
Почему новички редко начинают с PIC
В Arduino/MicroPython-мире меньше готовых примеров и плат. Документация рассчитана скорее на инженера, который выбирает чип под серийное изделие, чем на человека, который хочет за вечер подключить OLED и MQTT.
Бери PIC, если: проект или работа уже опираются на PIC, нужен конкретный периферийный блок, либо хочется изучить MPLAB и классическую микроконтроллерную разработку. Для общего первого DIY-проекта ESP32/AVR/RP2040 чаще стартуют быстрее.
MSPM0 и MSP430: энергосбережение и аналоговые задачи от TI
Производитель: Texas Instruments.
Семейства: классический 16-битный MSP430 и современный 32-битный MSPM0.
MSP430 долгие годы ассоциируется с низким потреблением: приборы учёта, автономные измерители, простые датчики на батарейках. MSPM0 — более современная доступная 32-битная линейка на Arm Cortex-M0+, которую TI позиционирует как масштабируемое семейство для embedded-задач.
В DIY MSPM0 пока менее заметен, чем STM32 и ESP32, но становится интересным, если важны аналоговая часть, недорогая промышленная автоматика, моторы, надёжная документация и экосистема TI.
Бери MSP430/MSPM0, если: ты строишь низкопотребляющий измеритель, работаешь с TI LaunchPad или хочешь глубже разбираться в аналоговых и промышленных применениях. Для Wi-Fi-устройства всё равно потребуется внешний радиомодуль.
Renesas RA, RL78 и RX: когда DIY начинает походить на промышленность
Производитель: Renesas.
Что важно знать: RA — Arm Cortex-M, RL78 — экономичная 16-битная линейка, RX — собственная 32-битная архитектура.
Renesas широко представлен в промышленной и автомобильной электронике. В хобби он встречается реже, но не потому, что чипы плохие: просто вокруг ESP32 и Arduino больше готовых уроков. Семейство RA построено на Cortex-M и включает варианты до 240 МГц с акцентом на безопасность, connectivity, HMI и motor control.
Также Renesas выпускает RL78, RX, RZ и другие линии. Если ты работаешь с промышленным оборудованием, дисплеем, мотором, защищённой периферией или готовой платой Renesas, это нормальная современная платформа. Но для первой DIY-метеостанции она обычно избыточна.
Не только эти: Silicon Labs, NXP, Infineon и другие
Мир микроконтроллеров намного шире перечня выше. В DIY они появляются реже, но знать о них полезно.
| Производитель | Семейства | Когда встретишь |
|---|---|---|
| Silicon Labs | EFM32, EFR32 | BLE, Zigbee, Thread, низкое потребление, умный дом |
| NXP | LPC, i.MX RT, Kinetis | Высокая производительность, аудио, дисплеи, Teensy у части поколений |
| Infineon | PSoC, XMC, AURIX | Аналоговые блоки, индустрия, motor control, automotive |
| GigaDevice | GD32 | Недорогие Cortex-M, часто похожи на STM32 по позиционированию |
| WCH | CH32, CH5xx | Очень дешёвые RISC-V/USB-платы, китайская экосистема |
| Bouffalo Lab | BL602/BL616 и др. | Wi-Fi/BLE RISC-V, экспериментальные IoT-проекты |
| Sonix, Realtek и др. | Разные SoC | Камеры, аудио, узкоспециализированные устройства |
Не обязательно изучать их все. Чаще всего такая плата попадает в руки вместе с готовым устройством, конкретным модулем или задачей. Тогда выбор уже сделан за тебя, и нужно искать документацию именно по этому семейству.
Сравнение по реальным задачам
| Задача | Первый кандидат | Альтернатива | Почему |
|---|---|---|---|
| Wi-Fi-датчик MQTT | ESP32-C3 | ESP32 classic / ESP32-S3 | Wi-Fi, готовые библиотеки, OTA, Home Assistant |
| Реле с веб-панелью | ESP32 | ESP8266 для очень простого случая | Дешёвое соединение с сетью и web server |
| BLE-кнопка от батарейки | nRF52 | ESP32-C3 | nRF обычно лучше по автономности и BLE-стеку |
| Zigbee/Thread/Matter | ESP32-C6 или nRF52/nRF54 | STM32WBA | Встроенная 802.15.4-радиочасть |
| USB-клавиатура, MIDI, макропад | RP2040 | SAMD21/SAMD51, nRF52840 | Удобный USB и PIO; много готовых примеров |
| WS2812-матрица и сложные тайминги | RP2040 | ESP32 с RMT | PIO хорошо подходит для точных сигналов |
| Простая учебная схема на 5 В | Arduino Uno/Nano на AVR | ATtiny, Arduino Nano Every | Понятная логика и устойчивые 5-вольтовые уровни |
| Промышленный датчик, CAN, мотор | STM32 G4/F4/H7 | Renesas RA, TI MSPM0 | Таймеры, DMA, CAN, ADC, motor control |
| Низкопотребляющий измеритель без радио | STM32L / MSP430 | AVR tinyAVR, Renesas RL78 | Режимы сна и автономность |
| Плата с большим дисплеем/аудио | STM32H7 / ESP32-S3 | NXP i.MX RT | Много RAM/периферии и производительность |
Как читать характеристики
Частота — не главная цифра
240 МГц у ESP32 не делают его «в три раза лучше» STM32 на 80 МГц. На результат влияют архитектура ядра, Flash/RAM, кеш, DMA, эффективность библиотек, периферия и то, что делает программа. Для включения реле раз в минуту разница между 16 и 240 МГц не имеет практического значения.
Flash и RAM — разные вещи
- Flash хранит прошивку и константы после выключения питания.
- RAM/SRAM хранит переменные, стек, буферы и работает только пока плата питается.
- PSRAM — внешняя дополнительная RAM на некоторых ESP32-платах; полезна для дисплеев, камер и больших буферов.
- EEPROM — отдельная энергонезависимая память, характерна для AVR; на других чипах её часто эмулируют во Flash.
Новичок часто смотрит только на Flash, а потом получает загадочные падения программы. Большие JSON-буферы, изображения, строки и сетевые библиотеки съедают прежде всего RAM.
GPIO — не просто «количество ножек»
Смотри не только на число GPIO, но и на детали:
- сколько реально выведено на плату;
- какие пины заняты Flash, USB, встроенным LED или кнопкой;
- есть ли ADC и сколько его каналов;
- поддерживают ли нужные пины PWM, I2C, SPI, UART;
- какие пины являются boot/strapping-пинами;
- какие уровни допускаются: 3,3 В или 5 В;
- есть ли внутренние подтяжки и насколько они слабые.
Самая частая ошибка: забыть про уровни
Большинство современных Arm, ESP и RP2040-плат используют GPIO 3,3 В. Если модуль питается от 5 В, это не означает, что его сигнал можно подавать на GPIO напрямую.
Классический пример — HC-SR04: сам датчик питается от 5 В и выдаёт Echo около 5 В. Для ESP32 или RP2040 этот выход нужно понизить резистивным делителем или согласователем уровней.
Быстрый способ понять, нужен ли level shifter
Смотри на две вещи отдельно: напряжение питания модуля и напряжение его логических сигналов.
- Если датчик питается от 3,3 В и его
SDA/SCL/TX/OUTподтянуты к 3,3 В — он обычно безопасен для 3,3-вольтового MCU. - Если датчик питается от 5 В, но в документации прямо указана совместимость его входов/выходов с 3,3 В — прямое соединение может быть допустимо. Всё равно проверь datasheet.
- Если 5-вольтовый модуль выдаёт логическую единицу 5 В, на GPIO ESP32/RP2040/STM32 нужен делитель или двунаправленный level shifter — зависит от интерфейса.
- Если неясно, измерь высокий уровень мультиметром или осциллографом и не подавай неизвестный сигнал прямо на GPIO.
Среды разработки
| Среда | Кому подходит | Часто работает с |
|---|---|---|
| Arduino IDE | Первый проект, быстрый прототип, готовые библиотеки | AVR, ESP, RP2040, STM32, SAMD, nRF и другие core |
| PlatformIO | Проекты с Git, библиотеками, несколькими окружениями | Большинство популярных платформ |
| MicroPython | Быстрые эксперименты, датчики, обучение Python | ESP32, RP2040, STM32, некоторые nRF |
| CircuitPython | Удобный USB-диск CIRCUITPY, Adafruit-библиотеки | SAMD, RP2040, ESP32-S2/S3/C3/C6 и поддерживаемые платы |
| ESP-IDF | Полные возможности ESP | ESP32-семейство |
| Pico SDK | C/C++ и PIO | RP2040/RP2350 |
| STM32CubeIDE / CubeMX | Конфигурация STM32-периферии и HAL/LL | STM32 |
| Zephyr / nRF Connect SDK | Bluetooth, Thread, Matter, RTOS | nRF, STM32, ESP и множество других |
| MPLAB X | PIC и AVR от Microchip | PIC, AVR, dsPIC, SAMD |
Выбор среды меняет ощущения от одного и того же чипа. ESP32 в Arduino IDE — быстрый прототип на вечер; ESP32 в ESP-IDF — более контролируемый продукт с полным доступом к возможностям SoC. STM32 в Arduino core можно заставить мигать LED за минуты, а в CubeMX — точно настроить DMA, таймер и частоты для сложного устройства.
Что купить новичку: практичный набор
Чтобы не утонуть в сотне плат, достаточно четырёх-пяти позиций:
- Arduino Uno/Nano-совместимая плата на ATmega328P — понять GPIO, 5 В, кнопки, LED, реле, базовую электронику.
- ESP32 DevKit или ESP32-C3 SuperMini — Wi-Fi, MQTT, веб-панель, IoT.
- RP2040-Zero или Raspberry Pi Pico — USB, MicroPython, PIO, компактные контроллеры.
- Небольшая STM32 Nucleo или проверенная плата на STM32G0/G4/F4 — когда захочется таймеров, ADC, CAN и более инженерного подхода.
- nRF52840-плата — если Bluetooth и батарейное питание становятся главной задачей.
Это не обязательный «правильный путь». Но такой набор покрывает почти все типичные DIY-сценарии и быстро учит главному: выбирать не бренд, а инструмент под задачу.
Что запомнить
- Arduino — экосистема, а не один микроконтроллер.
- ESP32 — главный массовый выбор для Wi-Fi и IoT; конкретную модель ESP нужно выбирать по радио и периферии.
- RP2040 хорош для USB и сложных таймингов благодаря PIO, но не содержит радио.
- STM32 — большое семейство для периферии, моторного управления, CAN, ADC и своих плат.
- AVR остаётся удобным для обучения и простых 5-вольтовых устройств, хотя по памяти и скорости уступает 32-битным семействам.
- nRF52/nRF54 сильнее всего там, где нужны Bluetooth LE, Thread/Zigbee и долгий срок работы от батареи.
- PIC, MSPM0/MSP430, Renesas и другие семейства важны в реальной электронике, но в DIY часто требуют более самостоятельной работы с документацией.
- Всегда проверяй уровни логики: 5 В на GPIO 3,3-вольтовой платы — частая причина сгоревшего чипа.
Проверь себя
- Ты собираешь датчик температуры с MQTT и настройкой через веб-страницу. Какое семейство будет самым прямым выбором?
- Нужно сделать USB-MIDI-контроллер с энкодерами и адресной LED-лентой, без Wi-Fi. Что выбрать в первую очередь?
- Устройство должно работать от батарейки, передавать раз в минуту маленький пакет по Bluetooth и жить как можно дольше. Почему ESP32 не всегда лучший вариант?
Показать ответы
- ESP32: Wi-Fi, MQTT, HTTP/web server и OTA хорошо поддержаны готовыми библиотеками. Для простой задачи можно взять ESP32-C3, для более тяжёлого интерфейса или дополнительной памяти — ESP32-S3/обычный ESP32 в зависимости от требований.
- RP2040. У него нативный USB, хорошая поддержка HID/MIDI и PIO для точной работы с WS2812. Альтернативы — SAMD21/SAMD51 или nRF52840, если нужен ещё и Bluetooth.
- Wi-Fi обычно требует заметной энергии при передаче и подключении к точке доступа. nRF52/nRF54 оптимизированы для BLE и глубокого сна: они могут коротко проснуться, передать маленький пакет и снова уйти в очень экономичный режим. Именно поэтому для BLE-датчика на батарейке Nordic часто практичнее ESP32.