Программирование модуля ESP32 с помощью Arduino IDE


Ранее на нашем сайте мы уже рассматривали начало работы с модулем ESP32, в котором мы рассматривали его программирование с помощью Arduino IDE. Но на момент написания той статьи в Arduino IDE еще не было официальной поддержки модуля ESP32, поэтому его поддержку в Arduino IDE приходилось добавлять используя инструмент GIT. Теперь же, когда в Arduino IDE есть официальная поддержка модулей (плат) ESP32, в использовании инструмента GIT уже нет никакой необходимости и используя описанный ниже подход вы сможете подготовить Arduino IDE для программирования модуля ESP32.

Программирование модуля ESP32 с помощью Arduino IDE

Необходимые компоненты

  1. Модуль ESP32 (купить на AliExpress).
  2. Arduino IDE.
  3. Кабель для программирования micro USB.

Основные аппаратные возможности модуля ESP32

При внешнем взгляде на модуль ESP32 видно, что он по размеру немного больше чем модуль ESP8266-01 и его контакты расположены более удобно на его плате. Внешний вид модуля ESP32 показан на следующем рисунке.

Внешний вид модуля ESP32

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

Micro-USB jack: данный разъем используется для подключения модуля ESP32 к компьютеру с помощью USB кабеля. С его помощью можно программировать модуль с компьютера, а также осуществлять последовательную связь.

Кнопка EN: это кнопка сброса модуля ESP32. Нажатие этой кнопки прекращает выполнение кода программы, которая запущена в модуле.

Кнопка загрузки (Boot Button): эта кнопка используется для загрузки программы в модуль ESP32. Ее необходимо нажимать после нажатия кнопки загрузки программы в Arduino IDE. Когда эта кнопка нажата вместе с кнопкой EN, модуль переходит в режим загрузки прошивки (firmware). Не экспериментируйте с этим режимом если вы не понимаете суть происходящих при этом процессов.

Светодиод красного цвета (Red LED): данный светодиод сигнализирует о том, что на модуль подано питание.

Светодиод синего цвета (Blue LED): данный светодиод подключен к контакту GPIO модуля. Его можно включать/выключать в программе. На некоторых клонированных китайских модулях ESP32 этот светодиод может быть также красного цвета.

Контакты ввода/вывода (I/O pins): данные контакты могут выполнять функции цифрового ввода/вывода, аналогового ввода/вывода, ШИМ (PWM), IIC, SPI, ЦАП (DAC) и многое. Более подробно про назначение данных контактов вы можете прочитать в даташите на модуль ESP32.

ESP-WROOM-32: "сердце" модуля ESP32. Это 32-битный микропроцессор, разработанный компанией Espressif systems.

Основные технические характеристики модуля ESP32 представлены в следующей таблице.

Число ядер процессора 2
Архитектура 32 бита
Wi-Fi есть
Bluetooth есть
RAM (ОЗУ) 512 KB
FLASH 16 MB
Число контактов 30-38 (в зависимости от модификации модуля)
Коммуникационные протоколы SPI, IIC, I2S, UART, CAN
Каналы АЦП 18
Разрешение АЦП 12 бит
Каналы ЦАП 2
Разрешение ЦАП 8 бит

Далее перейдем к подготовке среды Arduino IDE к работе с модулем.

Удаление старых версий плат ESP32 из Arduino IDE

Если вы подключаете свой модуль ESP32 к Arduino IDE, то данный пункт статьи можно полностью пропустить. Если же вы ранее добавляли поддержку плат ESP32 в Arduino IDE с помощью инструмента GIT (к примеру, как описано в данной статье), то вам необходимо будет удалить каталог Espresiff из каталога Arduino. Пользователи операционной системы Windows могут найти этот каталог по адресу Documents/Arduino/hardware. Удалите данный каталог Espresiff прежде чем переходить к выполнению других пунктов статьи.

Удаление каталога Espresiff из каталога Arduino

Подготовка Arduino IDE к программированию ESP32

Шаг 1. Скачайте дистрибутив Arduino IDE по адресу https://www.arduino.cc/en/Main/Software, после чего установите его. Если у вас Arduino IDE уже установлена, то убедитесь что у вас свежая ее версия.

Шаг 2. Откройте Arduino IDE и в ней выберите пункт меню Files -> Preferences, в открывшемся окне найдите поле “Additional Boards Manager URLs:” (выделено красной рамкой на рисунке ниже).

Вход в панель настроек Arduino IDE

Шаг 3. Это поле может быть пустым или оно может содержать некоторую информация если до этого вы в Arduino IDE работали с модулем ESP8266.

Если это поле пустое, то просто добавьте в него строку: https://dl.espressif.com/dl/package_esp32_index.json.

Если это поле уже содержит другой URL, то добавьте в него наш необходимый URL, разделив эти два URL запятой (,) – на представленном ниже рисунке как раз показан этот случай.

Добавление необходимого URL в Arduino Ide

После этого нажмите OK.

Шаг 4. Выберите пункт меню Tools -> Boards -> Board Managers чтобы открыть окно менеджера плат (Board manager), в открывшемся окне выполните поиск ESP32. Если в предыдущем окне был вставлен правильный URL, то на экране вы должны увидеть картину, показанную на рисунке ниже, после этого нажмите на кнопку Install и ваша плата (ESP32) будет установлена в Arduino IDE.

Поиск библиотеки для работы с ESP32 в менеджере плат Arduino IDE

Шаг 5. Убедитесь в том, что у вас есть активное интернет соединение и подождите пока установка полностью завершится. Этот процесс может занять до нескольких минут и зависит от скорости вашего интернет соединения.

Установка библиотеки для работы с ESP32 в Arduino IDE

Теперь наша Arduino IDE подготовлена к программированию модуля ESP32.

Программирование ESP32 с помощью Arduino IDE

Шаг 1. Подключите ваш модуль ESP32 к компьютеру с помощью кабеля micro-USB. Убедитесь в том, что на модуле загорится светодиод красного цвета – это будет свидетельствовать об успешной подаче питания на модуль.

Шаг 2. Откройте Arduino IDE, в ней выберите пункт меню Tools -> Boards и в нем выберите плату ESP32Dev как показано на следующем рисунке.

Выбор платы ESP32Dev в Arduino IDE

Шаг 3. Откройте диспетчер устройств в Windows и в нем посмотрите COM порт, к которому подключен модуль ESP32. В нашем случае, как показано на следующем рисунке, он подключен к порту COM 8.

Определение COM порта, к которому подключен модуль ESP32, в диспетчере устройств

Шаг 4. Вернитесь снова в Arduino IDE и в ней в пункте меню Tools -> Port выберите COM порт, к которому подключен модуль ESP32. После этого вы должны увидеть как в правом нижнем углу появится информация о том, с каким COM портом вы работаете.

Отображение используемого порта в Arduino IDE

Шаг 5. Загрузите в модуль программу для мигания светодиодом (Blink Program) чтобы убедиться в том, что ваши программы будут корректно загружаться из Arduino IDE в ваш модуль ESP32. После загрузки данной программы встроенный светодиод модуля должен начать мигать с интервалом 1 секунда.

Как видите, эта программа мигания светодиодом для модуля ESP32 очень похожа на аналогичную программу для платы Arduino, отличие заключается лишь в том, что в плате Arduino ее встроенный светодиод подключен к контакту 13, а в модуле ESP32 он подключен к контакту 2.

Шаг 6. Для загрузки кода программы в модуль нажмите на кнопку upload в Arduino IDE, после этого вы в ее консоли должны увидеть процесс загрузки программы в модуль как показано на следующем рисунке – это будет свидетельствовать о том, что все идет нормально.

Процесс загрузки программы из Arduino IDE в модуль ESP32

Примечание: для некоторых модулей во время загрузки программы необходимо удерживать кнопку загрузки (Boot button) чтобы процесс загрузки прошел без ошибок.

Тестирование работы программы мигания светодиодом

Также вы можете загрузить в модуль ESP32 другие примеры программ и посмотреть на их работу. Эти примеры программ вы можете найти в Arduino IDE в пункте меню File -> Example -> ESP32.

Исходный код программы (скетча)

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

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

Ваш адрес email не будет опубликован.