Как программировать / загружать код на ESP32-CAM AI-Thinker (Arduino IDE)

Плату разработки ESP32-CAM AI-Thinker можно программировать с помощью Arduino IDE. В этом руководстве показано, как программировать и загружать код на плату разработки ESP32-CAM (AI-Thinker) с помощью Arduino IDE.

Как программировать и загружать код на плату ESP32-CAM через Arduino IDE с FTDI программатором

Модуль ESP32-CAM AI-Thinker — это плата разработки на базе ESP32 с камерой OV2640, поддержкой microSD-карт, встроенной вспышкой и несколькими GPIO для подключения периферии. Однако у неё нет встроенного программатора. Для подключения к компьютеру и загрузки кода вам понадобится FTDI-программатор.

Установка дополнения ESP32

Чтобы программировать плату ESP32-CAM в Arduino IDE, вам нужно установить Arduino IDE, а также дополнение ESP32. Следуйте инструкциям в следующем руководстве для установки дополнения ESP32, если вы ещё этого не сделали:

Программирование ESP32-CAM (загрузка кода через Arduino IDE)

Чтобы загрузить код на ESP32-CAM (AI-Thinker) с помощью Arduino IDE, выполните следующие шаги.

Подключите плату ESP32-CAM к компьютеру с помощью FTDI-программатора. Используйте следующую схему подключения:

ESP32-CAM подключённая к FTDI-программатору для загрузки программы через Arduino IDE

Примечание: порядок расположения контактов FTDI на схеме может не совпадать с вашим. Обязательно проверяйте маркировку рядом с каждым контактом.

Многие FTDI-программаторы имеют перемычку, позволяющую выбрать 3.3V или 5V. Убедитесь, что перемычка установлена в правильное положение для выбора 5V.

FTDI-программатор - выбор перемычки на 5V

Важно: GPIO 0 должен быть подключён к GND, чтобы можно было загрузить код.

ESP32-CAM

FTDI-программатор

GND

GND

5V

VCC (5V)

U0R (RX)

TX

U0T (TX)

RX

GPIO 0

GND

Чтобы загрузить код на ESP32-CAM с помощью Arduino IDE, выполните следующие шаги:

  1. Перейдите в Tools > Board и выберите AI-Thinker ESP32-CAM. У вас должно быть установлено дополнение ESP32. В противном случае эта плата не появится в меню Boards.

  2. Перейдите в Tools > Port и выберите COM-порт, к которому подключена ESP32-CAM.

  3. Для демонстрации вы можете загрузить пустой скетч на вашу плату:

void setup() {
  // поместите сюда код настройки, который выполняется один раз:
}

void loop() {
  // поместите сюда основной код, который выполняется в цикле:
}
  1. Затем нажмите кнопку Upload в вашей Arduino IDE.

Кнопка загрузки в Arduino IDE 2
  1. Когда в окне отладки начнут появляться точки, возможно, вам потребуется нажать встроенную кнопку RST на ESP32-CAM, если она не переходит автоматически в режим прошивки.

Процесс загрузки кода на ESP32-CAM через Arduino IDE ESP32-CAM - нажмите встроенную кнопку RESET RST для перезагрузки

Через несколько секунд код должен быть успешно загружен на вашу плату.

ESP32-CAM AI Thinker модуль - сообщение об успешной загрузке в Arduino IDE
  1. Когда вы увидите сообщение «Done uploading», вам нужно отключить GPIO 0 от GND и нажать кнопку RST для запуска нового кода.

Распространённые ошибки и способы их устранения

Если вы не следовали предыдущим инструкциям точно, вы можете столкнуться со следующими ошибками:

Failed to connect to ESP32: Timed out waiting for packet header

ESP32-CAM Failed to connect to ESP32: Timed out waiting for packet header

Эта ошибка означает, что ESP32-CAM не находится в режиме прошивки или неправильно подключена к FTDI-программатору.

Brownout detector или Guru meditation error

Если вы откроете Serial Monitor в Arduino IDE и сообщение об ошибке «Brownout detector was triggered» постоянно выводится снова и снова — это означает, что есть какая-то аппаратная проблема.

Обычно она связана с одной из следующих причин:

  • Некачественный USB-кабель;

  • Слишком длинный USB-кабель;

  • Плата с дефектом (плохая пайка);

  • Неисправный USB-порт компьютера;

  • Или недостаточное питание от USB-порта компьютера.

Решение:

  • Попробуйте другой, более короткий USB-кабель (с проводами данных);

  • Используйте другой USB-порт компьютера или USB-хаб с внешним источником питания;

  • Некоторые пользователи использовали 3.3V и сообщили, что при питании ESP32-CAM от 5V проблема была решена.

Board at COMX is not available — COM-порт не выбран

ESP32-CAM COM-порт не выбран

Если вы получаете следующую ошибку или подобную:

serial.serialutil.SerialException: could not open port 'COM8': WindowsError(2, 'The system cannot find the file specified.')
Failed to execute script esptool
the selected serial port Failed to execute script esptool
 does not exist or your board is not connected
Board at COM8 is not available

Это означает, что вы не выбрали COM-порт в меню Tools. В вашей Arduino IDE перейдите в Tools > Port и выберите COM-порт, к которому подключена ESP32.

Также это может означать, что ESP32-CAM не устанавливает последовательное соединение с вашим компьютером или неправильно подключена к USB-разъёму.

Другие ошибки

Более подробный список наиболее распространённых проблем с ESP32-CAM и способов их решения читайте в нашем Руководстве по устранению неполадок ESP32-CAM.

Заключение

Мы надеемся, что это руководство поможет вам начать программировать вашу ESP32-CAM AI-Thinker с помощью Arduino IDE.

Ознакомьтесь со всеми нашими проектами с ESP32-CAM:

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

Спасибо за чтение.