ESP32 против ESP8266: какой микроконтроллер выбрать?


ESP32 против ESP8266. Если вы задумали проект Интернета вещей (IoT), вы неизбежно столкнетесь с выбором между этими двумя тяжеловесами в мире современных микроконтроллеров (MCU). Оба являются известными микроконтроллерами, и на то есть веские причины. Это небольшие маломощные микроконтроллеры с поддержкой Wi-Fi и 32-битными процессорами, идеально подходящие для управления широким спектром электронных проектов.

Но как определить, какой из них лучше всего подходит для вашего проекта?

ESP32 против ESP8266: какой микроконтроллер выбрать?

Давайте начнем с их сравнения чтобы помочь вам принять решение. Мы не будем фокусироваться исключительно на самом быстром микроконтроллере, самом энергоэффективном или самом выгодном по соотношению цены и качества. Вместо этого мы рассмотрим различные факторы, включая вычислительную мощность, возможности подключения, аппаратные характеристики, среды разработки, цены и многое другое.

Итак, давайте сравним ESP32 и ESP8266.

ESP8266

Микроконтроллер ESP8266

ESP8266 — это недорогой микрочип Wi-Fi со встроенным стеком TCP/IP и возможностями микроконтроллера, выпущенный в 2014 году компанией Espressif Systems в Шанхае, Китай.

Он быстро завоевал популярность благодаря своей простоте и низкой стоимости. Он работает на процессоре Tensilica Xtensa LX3 и в первую очередь предназначен для смарт-устройств, носимых устройств и проектов с поддержкой Wi-Fi.

ESP32

Микроконтроллер ESP32

ESP32, представленный в 2016 году, является преемником ESP8266 и предлагает несколько улучшений по сравнению с ним. К ним относятся более быстрый процессор, более быстрый Wi-Fi, Bluetooth-подключение, больше контактов GPIO и несколько других функций. Что еще более важно, он оснащен двухъядерным микропроцессором Tensilica Xtensa LX6, что значительно расширяет его вычислительные возможности.

Мощность обработки и память

ESP8266 оснащен 32-битным одноядерным процессором Tensilica Xtensa L106, работающим на частоте 80 МГц, который можно разогнать до 160 МГц. Он поставляется с 32 КБ ОЗУ инструкций, 80 КБ ОЗУ пользовательских данных и внешней флэш-памятью QSPI — от 512 КБ до 4 МБ.

ESP32 имеет немного более мощный процессор. Он может похвастаться двухъядерным микропроцессором Tensilica Xtensa LX6, который может работать на частоте до 240 МГц. Он включает в себя 520 КБ SRAM и поддерживает внешнюю флэш-память объемом до 16 МБ.

Благодаря увеличенной вычислительной мощности и объему памяти ESP32 подходит для более сложных задач.

Победитель: ESP32

Беспроводное подключение

Оба микроконтроллера поддерживают Wi-Fi, но ESP32 включает в себя дополнительные функции, такие как Wi-Fi Direct.

Кроме того, ESP32 имеет возможности Bluetooth v4.2 BR/EDR и BLE (Bluetooth Low Energy), которых нет у ESP8266. Это делает ESP32 более универсальным для беспроводной связи.

Победитель: ESP32

Периферийные интерфейсы

При сравнении двух микроконтроллеров важно знать, какие типы периферийных интерфейсов у них есть. Эти интерфейсы являются основными средствами, с помощью которых микроконтроллеры взаимодействуют с датчиками и другими устройствами, и они оказывают большое влияние на сложность и тип проектов, которые вы можете построить.

Ниже приведено сравнение периферийных интерфейсов, предоставляемых ESP8266 и ESP32:

Периферийный интерфейс ESP8266 ESP32
GPIO 17 программируемых GPIO 34 программируемых GPIO
АЦП 10-битный АЦП последовательного приближения на 1 канале 12-битный АЦП последовательного приближения до 18 каналов
ШИМ 4 канала 16 каналов
Интерфейс I2C 1 2
Интерфейс I2S 2 2
Интерфейс SPI 2 4
Интерфейс UART 2 3
CAN-интерфейс Нет 1
Ethernet Нет 10/100 Мбит/с
Датчик касания Нет 10 GPIO
Инфракрасный пульт дистанционного управления Нет TX/RX, до 8 каналов
Контроллер ведомого устройства SDIO/SPI Нет Да
Счетчик импульсов Нет Полное квадратурное декодирование

Победитель: ESP32

Встроенные датчики

Что касается встроенных датчиков, то ESP8266 весьма минималистичен: у него нет никаких встроенных датчиков.

С другой стороны, ESP32 более продвинут и включает в себя несколько встроенных датчиков. Обычно он поставляется с:

  • Датчиком Холла, способным обнаруживать магнитные поля. Это может быть полезно для таких приложений, как обнаружение наличия магнита или измерение силы магнитного поля.
  • Емкостный датчик прикосновения, который можно использовать для сенсорного ввода.
  • Датчик температуры, предназначенный для измерения внутренней температуры микросхемы, а не температуры окружающей среды, что может быть полезно для контроля работоспособности микроконтроллера.

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

Победитель: ESP32

Управление питанием

Обе платы оснащены передовыми технологиями энергосбережения, эффективно минимизирующими потребление энергии.

ESP8266 предлагает четыре режима питания: активный, модемный сон, легкий сон и глубокий сон. Согласно техническому описанию, в активном режиме, когда все функции работают одновременно, он может потреблять до 80 мА. Напротив, режим глубокого сна чрезвычайно эффективен, потребляя всего 20 мкА.

С другой стороны, ESP32 с его более быстрым процессором и увеличенной флэш-памятью имеет более высокое энергопотребление, потребляя до 240 мА в активном режиме. Чтобы компенсировать это, он вводит два дополнительных режима с низким энергопотреблением: спящий режим и выключение питания. Режим гибернации имеет впечатляюще низкое потребление всего 5 мкА, в то время как режим выключения питания снижает его еще больше до всего лишь 1 мкА.

Благодаря более низкому энергопотреблению в активном режиме ESP8266 лучше подходит для простых маломощных проектов с питанием от аккумуляторной батареи.

Победитель: ESP8266

Программирование и поддержка сообщества

И ESP8266, и ESP32 поддерживаются Arduino IDE и собственным ESP-IDF (Espressif IoT Development Framework). Arduino IDE подходит для небольших проектов, но для более крупных и сложных проектов рекомендуется использовать ESP-IDF через расширение Visual Studio Code или плагин Eclipse.

Более того, обе платы поддерживают программирование на MicroPython, Lua, JavaScript и других языках (полный список доступен на wiki), что делает их доступными для широкого круга программистов. Кроме того, сообщество разработчиков вокруг обоих модулей является крепким и активным, с обилием онлайн-форумов, обширных библиотек и учебных пособий.

Таким образом, с точки зрения поддержки программирования и ресурсов сообщества, между двумя платами практически нет конкуренции; обе предоставляют широкий спектр поддерживаемых языков и ресурсов.

Победитель: Ничья

Цена

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

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

Победитель: Ничья

Полное сравнение

Вот таблица, которая сравнивает спецификации и функции ESP8266 и ESP32 в деталях. Эта таблица служит точкой отсчета, суммируя возможности и предложения каждого микроконтроллера.

Особенность ESP8266 ESP32
Процессор Tensilica Xtensa L106 32 бит одноядерный Tensilica Xtensa LX6 32-битный двухъядерный
RAM 128 КБ 520 КБ
Тактовая частота 80/160 МГц 160/240 МГц
Рабочее напряжение 2,5-3,6 В 2,2-3,6 В
Рабочая температура от –40 °С до +125 °С от –40 °С до +125 °С
Flash До 4 МБ (обычно от 512 КБ до 1 МБ включительно) 4МБ
Поддержка внешней Flash До 16 МБ До 16 МБ
Память RTC 512 байт (внутри системной оперативной памяти) 16КБ
Wi-Fi 802.11b/g/n 802.11b/g/n
Bluetooth Нет Bluetooth 4.2, BLE
Ethernet Нет 10/100 Мбит/с
Интерфейс I2C 1 2
Интерфейс I2S 2 2
Интерфейс SPI 2 4
Интерфейс UART 2 3
CAN-интерфейс Нет 1
АЦП 10-битный АЦП последовательного приближения на 1 канале 12-битный АЦП последовательного приближения до 18 каналов
ШИМ 4 канала 16 каналов
Датчик касания Нет Да
Датчик температуры Нет Да
Датчик Холла Нет Да
GPIO 17 программируемых контактов 34 программируемых контакта
Инфракрасный пульт дистанционного управления Нет TX/RX, до 8 каналов
Контроллер ведомого устройства SDIO/SPI Нет Да
Счетчик импульсов Нет полное квадратурное декодирование
Цена ($5 – $6) ($6 – $9)

Как видим, по многим позициям ESP32 все таки опережает ESP8266, но здесь нужно учитывать что все таки ESP32 - это более новая разработка и что стоит он немного подороже.

Какой из них следует купить?

Итак, ESP32 вырывает победу и претендует на корону короля мира микроконтроллеров с поддержкой Wi-Fi. Дайте сигнал оркестру и зажгите фейерверк. 🥇🎉🎆

Но это не значит, что ESP32 — лучший выбор в каждом случае. В конце концов, ваш выбор микроконтроллера будет больше зависеть от конкретных требований вашего проекта, чем от жестких цифр. ESP32 явно выигрывает в большинстве сравнений, но он отстает по простоте и энергоэффективности. Это объясняет, почему ESP8266 остается популярным выбором для многих, несмотря на то, что не является лучшим по производительности.

Подводя итог, для простых маломощных проектов на основе Wi-Fi ESP8266 является предпочтительным выбором. С другой стороны, если вам нужна большая вычислительная мощность, дополнительная память и такие функции, как Bluetooth, то ESP32 — явный победитель.

(Проголосуй первым!)
Загрузка...
66 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *