Оглавление:

ESP32: внутренние детали и распиновка: 11 шагов
ESP32: внутренние детали и распиновка: 11 шагов

Видео: ESP32: внутренние детали и распиновка: 11 шагов

Видео: ESP32: внутренние детали и распиновка: 11 шагов
Видео: напишем программу! FLProg! учимся вместе программированию! ESP32 DevKit v1 WROOM-32 монтируем 2024, Ноябрь
Anonim
Image
Image

В этой статье мы поговорим о внутренних деталях и закреплении ESP32. Я покажу вам, как правильно идентифицировать контакты, глядя на таблицу данных, как определить, какой из контактов работает как ВЫХОД / ВХОД, как получить обзор датчиков и периферийных устройств, которые предлагает нам ESP32, в дополнение к ботинок. Поэтому я считаю, что с помощью приведенного ниже видео я смогу ответить на несколько вопросов, которые я получил в сообщениях и комментариях о ссылках на ESP32, среди другой информации.

Шаг 1: NodeMCU ESP-WROOM-32

ESP-WROOM-32
ESP-WROOM-32

Здесь у нас есть ВЫВОД

WROOM-32, который служит хорошим справочником при программировании. Важно обратить внимание на универсальный ввод / вывод (GPIO), то есть программируемые порты ввода и вывода данных, которые все еще могут быть аналого-цифровым преобразователем или сенсорным контактом, например, GPIO4. Это также происходит с Arduino, где входные и выходные контакты также могут быть ШИМ.

Шаг 2: ESP-WROOM-32

На изображении выше у нас есть сам ESP32. В зависимости от производителя существует несколько типов вставок с разными характеристиками.

Шаг 3. Но какова правильная распиновка для моего ESP32?

Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?
Но какова правильная распиновка для моего ESP32?

ESP32 не сложно. Это настолько просто, что мы можем сказать, что в вашем окружении нет дидактических забот. Однако нам нужно быть дидактичными, да. Если вы хотите программировать на Ассемблере, это нормально. Но инженерное время стоит дорого. Итак, если все, что является поставщиком технологий, дает вам инструмент, который требует времени для понимания его работы, это может легко стать проблемой для вас, потому что все это увеличит время разработки, в то время как продукт становится все более дорогим. Это объясняет мое предпочтение легких вещей, которые могут облегчить нашу повседневную жизнь, потому что время важно, особенно в сегодняшнем загруженном мире.

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

Как показано в примере ниже, у нас есть подключение светодиода в ESP и правильный режим настройки:

Обратите внимание, что это метка TX2, но мы должны следовать правильной идентификации, как показано на предыдущем изображении. Следовательно, правильная идентификация пина будет 17. Изображение показывает, насколько близко должен оставаться код.

Шаг 4: ВХОД / ВЫХОД

ВВОД, ВЫВОД
ВВОД, ВЫВОД

При выполнении тестов INPUT и OUTPUT на выводах мы получили следующие результаты:

INPUT не работал только на GPIO0.

ВЫХОД не работал только на выводах GPIO34 и GPIO35, которые являются VDET1 и VDET2 соответственно.

* Контакты VDET относятся к области питания RTC. Это означает, что они могут использоваться как выводы АЦП и что сопроцессор ULP может их читать. Они могут быть только входами и никогда не выходами.

Шаг 5: блок-схема

Блок-схема
Блок-схема

На этой схеме показано, что ESP32 имеет двухъядерный процессор, область чипа, которая контролирует WiFi, и другую область, которая контролирует Bluetooth. Он также имеет аппаратное ускорение для шифрования, которое позволяет подключаться к LoRa, сети дальней связи, которая позволяет подключаться на расстоянии до 15 км с помощью антенны. Мы также наблюдаем за генератором часов, часами реального времени и другими точками, включая, например, ШИМ, АЦП, ЦАП, UART, SDIO, SPI и другие. Все это делает устройство вполне полноценным и функциональным.

Шаг 6: Периферийные устройства и датчики

Периферийные устройства и датчики
Периферийные устройства и датчики

ESP32 имеет 34 GPIO, которым можно назначить различные функции, такие как:

Только в цифровом формате;

Аналоговый (может быть настроен как цифровой);

Емкостное касание (можно настроить как цифровое);

И другие.

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

Шаг 7: GPIO

Аналого-цифровой преобразователь (АЦП)

Esp32 объединяет 12-битные АЦП и поддерживает измерения на 18 каналах (аналоговые выводы). ULP-сопроцессор в ESP32 также предназначен для измерения напряжений при работе в спящем режиме, что обеспечивает низкое энергопотребление. ЦП может быть разбужен установкой порогового значения и / или другими триггерами.

Цифро-аналоговый преобразователь (ЦАП)

Два 8-битных канала ЦАП могут использоваться для преобразования двух цифровых сигналов в два аналоговых выхода напряжения. Эти сдвоенные ЦАП поддерживают источник питания в качестве источника входного напряжения и могут управлять другими цепями. Два канала поддерживают независимые преобразования.

Шаг 8: датчики

Датчики
Датчики
Датчики
Датчики

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

ESP32 имеет 10 емкостных датчиков GPIO, которые обнаруживают наведенные отклонения при касании или приближении к GPIO пальцем или другими объектами.

ESP32 также имеет датчик температуры и внутренний датчик Холла, но для работы с ними необходимо изменить настройки регистров. Подробнее читайте в техническом руководстве по ссылке:

www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf

Шаг 9: сторожевой пес

ESP32 имеет три таймера наблюдения: по одному на каждом из двух модулей таймера (называемых первичным сторожевым таймером или MWDT) и один на модуле RTC (называемым сторожевым таймером RTC или RWDT).

Шаг 10: Bluetooth

блютуз
блютуз
блютуз
блютуз

Интерфейс Bluetooth v4.2 BR / EDR и Bluetooth LE (с низким энергопотреблением)

ESP32 объединяет контроллер соединения Bluetooth и основную полосу частот Bluetooth, которые выполняют протоколы основной полосы частот и другие процедуры низкоуровневой связи, такие как модуляция / демодуляция, обработка пакетов, обработка битового потока, скачкообразная перестройка частоты и т. Д.

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

Шаг 11: загрузка

Ботинок
Ботинок
Ботинок
Ботинок

На многих платах разработки со встроенным USB / последовательным интерфейсом esptool.py может автоматически сбросить плату в режим загрузки.

ESP32 войдет в последовательный загрузчик, когда GPIO0 останется низким при сбросе. В противном случае он запустит программу во флэш-памяти.

GPIO0 имеет внутренний подтягивающий резистор, поэтому, если он не подключен, он будет иметь высокий уровень.

Многие платы используют кнопку с надписью «Flash» (или «BOOT» на некоторых платах разработки Espressif), которая при нажатии ведет GPIO0 вниз.

GPIO2 также следует оставить неподключенным / плавающим.

На изображении выше вы можете увидеть тест, который я выполнил. Я приложил осциллограф ко всем контактам ESP, чтобы посмотреть, что происходит при его включении. Я обнаружил, что когда я получаю булавку, она генерирует колебания длительностью 750 микросекунд, как показано в выделенной области справа. Что мы можем с этим поделать? У нас есть несколько вариантов, например, задание задержки с помощью схемы с транзистором, расширителя двери, например. Я указываю, что GPIO08 перевернут. Колебание идет вверх, а не вниз.

Еще одна деталь заключается в том, что некоторые пины начинаются с высокого, а другие с низкого. Следовательно, этот ПИН-ВЫВОД является ссылкой на то, когда ESP32 включается, особенно когда вы работаете с нагрузкой для срабатывания, например, симистором, реле, контактором или некоторой мощностью.

Рекомендуемые: