Распиновка контроллера esp32 wroom-32 1.0 arduino+

Wi-Fi модуль ESP32 WROOM DevKit v1: распиновка, схема подключения и программирование

ESP32 DevKit платформа для разработки IoT-решений.

Программирование на C++

После выполненных действий плата ESP32 DevKit готова к программированию через Arduino IDE.

Подробности о функциях и методах работы ESP32 на языке C++ читайте на ESP32 Arduino Core’s.

Примеры работы для Arduino

ESP32 может подключиться к Wi-Fi сети, создать собственную точку доступа, представляться сервером и клиентом, формировать GET и POST запросы. Также микроконтроллер имеет два АЦП и датчик Хола.

Пример WebClient

После подключения к Wi-Fi микроконтроллер напишет в COM порт ответ от сервера.

Пример Analog WebServer

ESP32 имеет 15 аналоговых пинов. Выведем через веб-интерфейс значения с 36, 39 и 34 пина.

Когда микроконтроллер подключится к Wi-Fi сети, в монитор порта будет выведен IP-адрес веб-страницы с данными. Получить к ней доступ можно из локальной сети, перейдя по указанному IP-адресу. Скопируйте IP-адрес из монитора порта и вставьте в адресную строку браузера. Если вы подключены к той же локальной сети, что и ESP32, то вы увидите веб-интерфейс.

Пример blink WebServer

Создадим WEB-сервер на порту 80. С помощью веб-интерфейса будем мигать светодиодами на 16 и 17 пинах.

При переходе по IP-адресу из монитора порта, выводится веб-страница с кнопками.

Программирование на JavaScript

Подробнее о функциях и методах работы ESP32 на языке JavaScript читайте документацию на Espruino.

Элементы платы

Мозг платформы

Платформа для разработки ESP32 DevKit основана на модуле ESP32-WROOM с чипом ESP32-D0WDQ6 от Espressif.

Чип ESP32-D0WDQ6

Чип ESP32-D0WDQ6 — выполнен по технологии SoC (англ. System-on-a-Chip — система на кристалле), в которую входит 2-ядерный 32-битный процессор Tensilica Xtensa LX6 с блоками памяти ROM на 448 КБ и SRAM на 520 КБ. В кристалле также расположены беспроводные технологии Wi-Fi/Bluetooth, радио-модуль, датчик Холла и сенсор температуры.

Для работы с чипом необходима внешняя Flash-память и другая электронная обвязка. Кристалл ESP32-D0WDQ6 является основой на базе которой выпускаются модули с необходимой периферией: например ESP32-WROOM или ESP32-WROVER .

Модуль ESP32-WROOM

ESP32-WROOM — модуль с чипом ESP32-D0WDQ6, Flash-памятью на 4 МБ и всей необходимой обвязкой, которые спрятаны под металлическим кожухом. Pins SCK/CLK, SDO/SD0, SDI/SD1, SHD/SD2, SWP/SD3 and SCS/CMD, namely, GPIO6 to GPIO11 are connected to the integrated SPI flash integrated on the module and are not recommended for other uses.

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

Модуль является основной, на которой выполняются промышленные устройства или отладочные платы, например: ESP32 DevKit или ESP32-Sense Kit .

USB-UART преобразователь

Преобразователь USB-UART на микросхеме CP2102 обеспечивает связь модуля ESP32-WROOM с USB-портом компьютера. При подключении к ПК — платформа ESP32 DevKit определяется как виртуальный COM-порт.

Разъём micro-USB

Разъём micro-USB предназначен для прошивки и питания платформы ESP32 DevKit с помощью компьютера.

Светодиодная индикация

Имя светодиода Назначение
ON Индикатор питания платформы.
LED Пользовательский светодиод на 2 пине микроконтроллера. При задании значения «высокого уровня» светодиод включается, при «низком» – выключается.

Кнопка EN

Кнопка предназначена для ручного сброса программы — аналог кнопки RESET обычного компьютера.

Кнопка BOOT

Кнопка служит для ручного перевода модуля в режим прошивки:

Регулятор напряжения

Линейный понижающий регулятор напряжение AMS1117-3.3 обеспечивает питание микроконтроллера. Выходное напряжение 3,3 вольта с максимальным током 1 А.

Распиновка

Пины питания

Порты ввода/вывода

В отличие от большинства плат Arduino, родным напряжением ESP32 DevKit является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Более высокое напряжение может повредить микроконтроллер!

Будьте внимательны при подключении периферии: убедитесь, что она может корректно функционировать в этом диапазоне напряжений.

Интерфейсы

Каждый пин ввода-вывода платформы поддерживает аппаратные интерфейсы.

Digitrode

цифровая электроника вычислительная техника встраиваемые системы

Детальная распиновка ESP32: какие линии GPIO можно использовать

Микроконтроллер ESP32 имеет 48 выводов, обладающих различными функциями. Не все контакты доступны на всех отладочных платах с ESP32, и есть некоторые контакты, которые нельзя использовать. Существует много вопросов о том, как использовать линии ввода/вывода (GPIO) на ESP32. Какие контакты вы должны использовать? Какие выводы вы должны избегать использовать в своих проектах? В этом материале мы постараемся ответить на данные вопросы.

Итак, в первую очередь нужно знать, какую периферию имеет ESP32. В микроконтроллере содержится:

  • 18 каналов АЦП
  • 3 интерфейса SPI
  • 3 интерфейса UART
  • 2 интерфейса I2C
  • 16 выходных каналов ШИМ
  • 2 канала ЦАП
  • 2 интерфейса I2S
  • 10 GPIO для емкостных датчиков

АЦП (аналого-цифровой преобразователь) и ЦАП (цифро-аналоговый преобразователь) назначаются конкретным статическим контактам. Однако вы можете определить контакты UART, I2C, SPI, PWM и т. д. – вам просто нужно назначить их в коде. Это возможно благодаря функции мультиплексирования ESP32. Хотя вы можете определить выводы в программном обеспечении, по умолчанию назначены контакты, как показано на следующем рисунке (это пример для платы ESP32 DEVKIT V1 DOIT с 36 выводами – расположение контактов может меняться в зависимости от производителя).

Кроме того, есть выводы с определенными функциями, которые делают их подходящими или нет для конкретного проекта. На следующем рисунке показана распиновка ESP-WROOM-32. Вы можете использовать его в качестве справочной информации, если вы используете чип для создания пользовательской платы.

Линии GPIO с 34 по 39 являются GPI, то есть направлены только на ввод информации. Эти линии не имеют внутренних подтягивающих резисторов. Они не могут использоваться в качестве выходов, поэтому используйте эти контакты только как входы.

GPIO 6 – GPIO 11 отображаются на некоторых платах ESP32. Однако эти контакты подключены к интегрированной SPI flash на микроконтроллере ESP-WROOM-32 и не рекомендуются для других целей. Поэтому не используйте эти контакты в своих проектах.

ESP32 имеет 10 внутренних емкостных сенсорных датчиков. Они могут ощущать изменения во всем, что содержит электрический заряд, даже на человеческой коже. Таким образом, они могут обнаруживать изменения, вызванные прикосновением к GPIO пальцем. Эти выводы легко работают с емкостными панелями и заменяют механические кнопки. Емкостные сенсорные выводы также могут использоваться для пробуждения ESP32 от глубокого сна. Эти датчики подключены к следующим GPIO: T0 (GPIO 4), T1 (GPIO 0), T2 (GPIO 2), T3 (GPIO 15), T4 (GPIO 13), T5 (GPIO 12), T6 (GPIO 14), T7 (GPIO 27), T8 (GPIO 33), T9 (GPIO 32).

ESP32 имеет 18 x 12 битных входных каналов АЦП (в то время как ESP8266 имеет только один 10 битный канал АЦП). Вот GPIO, которые могут использоваться как АЦП и соответствующие каналы: ADC1_CH0 (GPIO 36), ADC1_CH1 (GPIO 37), ADC1_CH2 (GPIO 38), ADC1_CH3 (GPIO 39), ADC1_CH4 (GPIO 32), ADC1_CH5 (GPIO 33), ADC1_CH6 (GPIO 34), ADC1_CH7 (GPIO 35), ADC2_CH0 (GPIO 4), ADC2_CH1 (GPIO 0), ADC2_CH2 (GPIO 2), ADC2_CH3 (GPIO 15), ADC2_CH4 (GPIO 13), ADC2_CH5 (GPIO 12), ADC2_CH6 (GPIO 14), ADC2_CH7 (GPIO 27), ADC2_CH8 (GPIO 25), ADC2_CH9 (GPIO 26). Следует помнить, выводы ESP32 ADC ведут себя не совсем линейно. Вероятно, вы не сможете отличить от 0 до 0,1 В или от 3,2 до 3,3 В. Это необходимо учитывать при использовании выводов АЦП. Вы получите такое же поведение, как показано на следующем рисунке.

В ESP32 есть 2 x 8 битных канала ЦАП для преобразования цифровых сигналов в аналоговые выходы напряжения. Вот каналы ЦАП: DAC1 (GPIO25), DAC2 (GPIO26).

В ESP32 имеется поддержка RTC (ядро низкого энергопотребления) GPIO. GPIO, перенаправленные в подсистему с низким энергопотреблением RTC, могут использоваться, когда ESP32 находится в глубоком сне. Эти RTC GPIO могут использоваться для пробуждения ESP32 от глубокого сна при работе сопроцессора Ultra Low Power (ULP). Следующие GPIO могут использоваться как внешний источник пробуждения: RTC_GPIO0 (GPIO36), RTC_GPIO3 (GPIO39), RTC_GPIO4 (GPIO34), RTC_GPIO5 (GPIO35), RTC_GPIO6 (GPIO25), RTC_GPIO7 (GPIO26), RTC_GPIO8 (GPIO33), RTC_GPIO9 (GPIO32), RTC_GPIO10 (GPIO4), RTC_GPIO11 (GPIO0), RTC_GPIO12 (GPIO2), RTC_GPIO13 (GPIO15), RTC_GPIO14 (GPIO13), RTC_GPIO15 (GPIO12), RTC_GPIO16 (GPIO14), RTC_GPIO17 (GPIO27).

ШИМ-контроллер PWM LED в ESP32 имеет 16 независимых каналов, которые могут быть сконфигурированы для генерации сигналов ШИМ с различными свойствами. Практически все контакты, которые могут выступать в качестве выходов, могут использоваться в качестве выходов ШИМ (GPIO с 34 по 39 не могут генерировать ШИМ). Чтобы установить сигнал ШИМ, вам необходимо определить эти параметры в коде: частота сигнала, скважность, ШИМ-канал, а также GPIO, где вы хотите вывести сигнал.

При использовании ESP32 с Arduino IDE вы должны использовать стандартные выходы ESP32 I2C (поддерживаемые библиотекой Wire): GPIO 21 (SDA), GPIO 22 (SCL).

В ESP32 имеется также интерфейс SPI, вот его сопоставление контактов:

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

Помимо прочего в ESP32 есть еще один вывод – Enable (EN). Это линия активации регулятора 3.3V. Он подтянут, поэтому подключитесь к земле, чтобы отключить регулятор 3.3V. Это означает, что вы можете использовать этот вывод, подключенный к кнопке, чтобы перезапустить ESP32, например.

И напоследок, абсолютный максимальный ток, потребляемый одной линией GPIO, составляет 12 мА, но рекомендуется при нормальном использовании 6 мА.

Микроконтроллер ESP32 и проекты Arduino

Микроконтроллер ESP32 – это одна из самых доступных и мощных платформ для создания умных ардуино-проектов с поддержкой WiFi. Придя на смену ESP8266, этот чип дал новые возможности для разработчиков, хотя по-прежнему остались старые проблемы с поддержкой и документацией. В этой статье вы найдете описание характеристик, распиновку микросхемы, примеры программирования с помощью Arduino IDE

Описание микроконтроллера ESP32

Фирма Espressif выпустила мощный недорогой микроконтроллер ESP32 летом 2016 года. Устройство представляет собой систему на кристалле, построенную по технологии TSMC 40 нм, с Wi-Fi и Bluetooth контроллерами. Оно оснащено двухъядерным 32-битным процессором, который работает на частотах 80, 160 или 240 МГц. Также в систему интегрированы антенные коммутаторы, радиочастотные компоненты, фильтры, усилители, модули управления питанием. Подключается ESP32 к компьютеру через обычный USB провод.

Модуль ESP32 NodeMCU

Характеристики чипа

Технические характеристики ESP32:

  • Двух- или одноядерный 32-битный процессор Tensilica Xtensa LX6;
  • Тактовая частота – 160 или 240 МГц;
  • 520 Кб SRAM;
  • Максимальный ток потребления 260 мА, в спящем режиме – 10 мА;
  • Стандарты беспроводной связи – Wi-Fi: 802.11 b / g / N, Bluetooth: v4.2 BR/EDR and BLE;
  • Наличие датчиков температуры, Холла, тач-сенсоров;
  • Инфракрасное дистанционное управление;
  • Можно подключать двигатели и светодиоды через ШИМ разъем;
  • Стандарт IEEE 802.11 с поддержкой WFA, WPA/WPA2 и WAPI;
  • Возможность безопасной загрузки;
  • Шифрование флэш диска.

Микросхема ESP32

Также в модуле традиционно присутствует встроенное управление энергопитанием. Для этого используются линейный регулятор, индивидуальное питание для RTC (ядро низкого энергопотребления), пробуждение по таймеру или сенсорному датчику.

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

  • Arduino IDE;
  • Espressif IoT Development Framework;
  • Espruino;
  • PlatformIO;
  • Pymakr IDE.

Большинство проектов реализуется на Arduino IDE и Espruino.

Использование ESP 32

Хоть плата ESP32 появилась недавно, она уже активно используется в коммерческих проектах, связанных с мобильными приложениями, электроникой и задачами IoT. Например, на ее базе построен светодиодный браслет IoT группы Alibaba. Он представляет собой живой беспроводной экран, в котором каждый браслет работает как пиксель. Также на основе микроконтроллера реализована биометрическая система отслеживания посещаемости и проекты, связанные с анализом климатических условий. Имея плату ESP32 и датчики температуры, влажности и давления, можно самостоятельно собрать метеостанцию. ESP32 используется в музыкальных плеерах, помощниках с голосовым управлением, аудиогарнитуре.

Распиновка ESP32

Микроконтроллер оснащен 48 контактами плюс 1 большой тепловой контакт, которые обладают разными функциями. Выводы микросхемы:

  • 18 каналов 12-разрядного АЦП;
  • 10 GRIO портов;
  • 3 SPI;
  • 3 UART;
  • 2 I2C;
  • 16 ШИМ выводов;
  • 2 8-битных ЦАП вывода;
  • 2

Расположение выводов зависит от производителя. Например, есть плата ESP32 DEVKIT V1 DOIT, у которой 36 контактов. Распиновка представлена на рисунке ниже.

Распиновка ESP32

Одним из самых популярных модулей является ESP-WROOM-32. Распиновка также приведена на картинке.

Распиновка ESP WROOM 32

К портам GRIO 0, 4, 2, 15, 13, 12, 14, 27, 33 и 32 подключены сенсорные выводы. Они могут использоваться для вывода ESP32 из глубокого сна. Они фиксируют любое изменение электрического заряда.

Порты с 34 по 39 используются только для ввода информации. На них отсутствуют подтягивающие резисторы, поэтому их нельзя использовать как выходы.

На некоторых платах отображаются контакты 6-11. Они подсоединены к к интегрированной SPI flash. Их не используют в проектах.

Есть различные версии платы ESP32 размерами 5х5 мм или 6х6 мм. Также на основе ESP32 существуют модули SMT для интегрирования в другие платы.

Отличия esp32 от esp8266

Платформы ESP8266 и ESP32 произведены одной компанией Espressif. Микроконтроллер ESP32 отличается от своего предшественника улучшенными характеристиками, увеличенным функционалом и большим объемом памяти. Стоимость нового прибора дороже примерно в 2 раза.

Важным преимуществом ESP32 является более быстрый Wi-Fi и Bluetooth. В ESP32 установлен более мощный процессор, позволяющий реализовывать сложные проекты. Эта платформа подходит для приложений, в которых требуется интернет или новые интерфейсы. Для более дешевых разработок используется ESP8266.

Объем памяти у нового устройства ESP32 увеличен – 512 Кб против 160 Кб ESP8266. Также ESP32 отличается большим количеством выводов GRIO. К нескольким контактам на ESP32 прикреплены емкостные сенсорные датчики и датчик температуры. На обоих устройствах контакты GRIO можно использовать по-разному. ESP32 имеет 18 12-битных АЦП каналов. У его предшественника есть всего 1 10-битный вывод АЦП.

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

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

Настройка Arduino IDE для работы с ESP32

Изначально изделия от компании Espressif поставляются с прошивкой, позволяющей работать с помощью AT команд. Это не всегда удобно, поэтому лучше программировать плату в привычной среде разработки – Arduino IDE.

Чтобы начать создавать проекты на ESP32, сначала нужно иметь его поддержку в среде разработки Arduino IDE. Поддержка в настоящий момент находится на начальном, но работоспособном уровне. Проблемы могут возникнуть с драйверами устройств, но из-за популярности модуля вскоре будет поддерживаться вся периферия.

В первую очередь нужно скачать Arduino IDE и официальную инструкцию с сайта https://github.com/espressif/arduino-esp32. Нужно загрузить файлы дистрибутива и поместить в папку C:UsersUserDocumentsArduinohardwareespressifesp32.

Так как плата ESP32 новая и поддержка в среде разработки Ардуино появилась недавно, то могут возникнуть сложности с установкой. Это связано с тем, что драйвера только разрабатываются и изменен порядок расположения системных директорий. Все скетчи должны быть расположены в папке C:UsersUserDocumentsArduino. Файлы дистрибутива должны быть размещены внутри этой папки, как советует производитель. Если этого не учесть, то поддержка в Ардуино ESP32 будет отсутствовать.

После установки можно открыть Arduino IDE. Затем нужно перейти в настройки и в менеджере плат выбрать нужную. Теперь можно прошивать модуль.

Проверка модуля и подключение к Arduino IDE

Чтобы произвести проверку работоспособности модуля, можно собрать проект с мигающим светодиодом. Для подключения потребуются:

  • Модуль ESP32;
  • Источник питания на 3 В;
  • Кнопка;
  • Резисторы;
  • USB кабель для подключения к компьютеру;
  • Провода;
  • Светодиод;
  • USB-TTL конвертор.

Собирается это все согласно схеме ниже.

Пример схемы ESP8266

Затем нужно загрузить тестовый код, прописав в нем номер COM порта, к которому подключен модуль, и тип платы. После загрузки скетча должен замигать светодиод.

Настройка официальной среды разработки ESP-IDF (Espressif IoT Development Framework)

Среду ESP-IDF можно установить на Windows. Для этого нужно:

  • Скачать с официального сайта среду разработки;
  • Распаковать архив, поместить его на диск C;
  • Затем появится каталог msys32, в который нужно перейти и запустить программу mingw32.exe;
  • Появится окно терминала, где нужно создать каталог с именем esp;
  • Нужно перейти в созданный каталог;
  • Подключить необходимые библиотеки с помощью команды git clone –recursive https://github.com/espressif/esp-idf.git;
  • Затем устанавливаются пакеты Python командой python -m pip install –user -r $IDF_PATH/requirements.txt.

После этого можно начинать работу. В каталоге esp-idfexamples есть различные примеры скетчей для работы с модулем.

Справочник по распиновке ESP32: Какие выводы GPIO следует использовать?

Чип ESP32 поставляется с 48 контактами с разными функциями. Не все контакты доступны на всех платах ESP32, и есть некоторые контакты, которые нельзя использовать.

Есть много вопросов о том, как использовать ESP32 GPIO. Какие контакты необходимо использовать? Какие выводы лучше избегать в своих проектах? Этот пост призван стать простым и понятным справочным руководством для ESP32 GPIO.

На рисунке ниже показана распиновка ESP-WROOM-32. Вы можете использовать его в качестве справочного материала, если вы используете голую микросхему ESP32 для сборки собственной схемы:

Периферийные устройства ESP32

К периферийным устройствам ESP32 относятся:

  • 18 Каналов аналого-цифрового преобразователя (АЦП )
  • 3 Интерфейса SPI3
  • Интерфейс UART2
  • Интерфейс I2C16
  • Выходные каналы ШИМ
  • 2 Цифро-аналоговых преобразователя (ЦАП)
  • 2 Интерфейса I2S10
  • Емкостные считывающие устройства GPIO

Функции АЦП (аналого-цифровой преобразователь) и ЦАП (цифро-аналоговый преобразователь) назначаются определенным статическим контактам. Тем не менее, вы можете решить, какие контакты будут отведены под UART, I2C, SPI, PWM и т. д. – вам просто нужно назначить их в коде. Это возможно благодаря функции мультиплексирования чипа ESP32.

Хотя вы можете определить свойства контактов в программном обеспечении, есть контакты, назначенные по умолчанию, как показано на следующем рисунке (это пример платы ESP32 DEVKIT V1 DOIT с 36 контактами – расположение контактов может меняться в зависимости от производителя).

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

Контакты, с “ОК”, подходят для использования. Пины без “ОК”, подходят для использования, но вы должны обратить на них внимание, потому что они могут иметь неожиданное поведение, в основном при загрузке.

GPIO Input Output Notes
0 pulled up OK outputs PWM signal at boot
1 TX pin OK debug output at boot
2 OK OK connected to on-board LED
3 OK RX pin HIGH at boot
4 OK OK
5 OK OK outputs PWM signal at boot
6 x x connected to the integrated SPI flash
7 x x connected to the integrated SPI flash
8 x x connected to the integrated SPI flash
9 x x connected to the integrated SPI flash
10 x x connected to the integrated SPI flash
11 x x connected to the integrated SPI flash
12 OK OK boot fail if pulled high
13 OK OK
14 OK OK outputs PWM signal at boot
15 OK OK outputs PWM signal at boot
16 OK OK
17 OK OK
18 OK OK
19 OK OK
21 OK OK
22 OK OK
23 OK OK
25 OK OK
26 OK OK
27 OK OK
32 OK OK
33 OK OK
34 OK input only
35 OK input only
36 OK input only
39 OK input only

Пины только для входа

GPIO с 34 по 39 являются GPI – только входные. Эти контакты не имеют внутренних подтягивающих или понижающих резисторов. Они не могут быть использованы как выходы, поэтому используйте эти выводы только как входы:

SPI-flash встроена в ESP-WROOM-32

От GPIO 6 до GPIO 11 представлены в некоторых платах разработки ESP32. Однако эти пины подключены к встроенной флэш-памяти SPI на микросхеме ESP-WROOM-32 и не рекомендуются для других целей. Поэтому не используйте эти контакты в своих проектах:

  • GPIO 6 (SCK / CLK)
  • GPIO 7 (SDO / SD0)
  • GPIO 8 (SDI / SD1)
  • GPIO 9 (SHD / SD2)
  • GPIO 10 (SWP / SD3)
  • GPIO 11 (CSC / CMD)

Емкостные сенсорные GPIO

ESP32 имеет 10 внутренних емкостных сенсорных датчиков. Они могут ощущать изменения во всем, что содержит электрический заряд, например, в коже человека. Таким образом, они могут обнаруживать изменения, возникающие при касании пальцами GPIO. Эти контакты могут быть легко встроены в емкостные панели и заменять механические кнопки. Емкостные сенсорные контакты также могут быть использованы для пробуждения ESP32 от глубокого сна.

Данные внутренние сенсорные датчики подключены к этим GPIO:

  • T0 (GPIO 4)
  • T1 (GPIO 0)
  • T2 (GPIO 2)
  • T3 (GPIO 15)
  • T4 (GPIO 13)
  • T5 (GPIO 12)
  • T6 (GPIO 14)
  • T7 (GPIO 27)
  • T8 (GPIO 33)
  • T9 (GPIO 32)

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

ESP32 имеет входные каналы АЦП 18 x 12 бит. Это GPIO, которые можно использовать в качестве АЦП и соответствующих каналов:

  • ADC1_CH0 (GPIO 36)
  • ADC1_CH1 (GPIO 37)
  • ADC1_CH2 (GPIO 38)
  • ADC1_CH3 (GPIO 39)
  • ADC1_CH4 (GPIO 32)
  • ADC1_CH5 (GPIO 33)
  • ADC1_CH6 (GPIO 34)
  • ADC1_CH7 (GPIO 35)
  • ADC2_12 GPO (0)
  • ADC2_CH2 (GPIO 2)
  • ADC2_CH3 (GPIO 15)
  • ADC2_CH4 (GPIO 13)
  • ADC2_CH5 (GPIO 12)
  • ADC2_CH6 (GPIO 14)
  • ADC2_CH7 (GPIO 27)
  • ADC2_CH8 (GPIO 25)
  • ADC2_CH9 (GPIO 26)

Примечание: контакты ADC2 нельзя использовать при использовании Wi-Fi. Поэтому, если вы используете Wi-Fi и у вас возникают проблемы с получением значения от GPIO ADC2, вы можете вместо этого рассмотреть возможность использования GPIO ADC1, что должно решить вашу проблему.

Входные каналы АЦП имеют разрешение 12 бит. Это означает, что вы можете получить аналоговые показания в диапазоне от 0 до 4095, в которых 0 соответствует 0 В, а 4095 – 3,3 В. У вас также есть возможность установить разрешение ваших каналов в коде, а также диапазон АЦП.

Выводы АЦП ESP32 не имеют линейного поведения. Вы, вероятно, не сможете отличить 0–0,1 В или 3,2–3,3 В. Об этом следует помнить при использовании выводов АЦП. Вы получите поведение, подобное показанному на следующем рисунке.

Источники:

http://digitrode.ru/computing-devices/mcu_cpu/1536-detalnaya-raspinovka-esp32-kakie-linii-gpio-mozhno-ispolzovat.html

http://arduinomaster.ru/platy-arduino/esp32-arduino-raspinovka-arduino-ide/

http://diytech.ru/projects/spravochnik-po-raspinovke-esp32-kakie-vyvody-gpio-sleduet-ispolzovat

http://arduinoplus.ru/rozhdestvenskaya-ekla-radiolubitelya/

Ссылка на основную публикацию