Распиновка ESP32-CAM AI-Thinker. Назначение GPIO.

ESP32-CAM — это отладочная плата с чипом ESP32-S, камерой OV2640, слотом для карт microSD и несколькими GPIO для подключения периферийных устройств. В этом руководстве мы рассмотрим GPIO ESP32-CAM и способы использования контактов платы.

Распиновка ESP32-CAM AI-Thinker.

На рисунке ниже показана распиновка ESP32-CAM AI-Thinker.

распиновка ESP32-CAM AI-Thinker

На следующем рисунке показана принципиальная схема ESP32-CAM.

принципиальная схема ESP32-CAM

Вы можете скачать принципиальную схему в PDF-формате внизу статьи, в разделе «файлы для скачивания».

Контакты питания

ESP32-CAM имеет три GND пина (окрашены серым цветом) и два контакта питания (окрашены в красный цвет): 3,3 В и 5 В.

Вы можете подключить питание ESP32-CAM к 3,3 В или 5 В. Тем не менее, возникают ошибки в работе, при подключении питания ESP32-CAM к 3.3V, поэтому советую подключать ESP32-CAM к 5V pin питания.

Вывод питания

Также на шелкографии есть обозначение VCC (окрашен желтым прямоугольником). Вы не должны использовать этот вывод для питания ESP32-CAM. Это вывод предназначен для подключения внешних потребителей. Он может выводить 5 В или 3,3 В.

В нашем случае ESP32-CAM выдает 3,3 В независимо от того, питается он от 5 В или 3,3 В. Рядом с выводом VCC есть две контактные площадки. Одна обозначена как 3,3 В, а другая — как 5 В.

Также на шелкографии есть обозначение VCC

Если присмотреться, у вас должна быть перемычка на контактных площадках 3,3 В. Если вы хотите, чтобы на выводе VCC было выходное напряжение 5 В, вам необходимо распаять это соединение и запаять контактные площадки 5 В.

Последовательный интерфейс.

GPIO 1 и GPIO 3 — это последовательный интерфейс (контакты TX и RX). Поскольку ESP32-CAM не имеет встроенного программатора, вам необходимо использовать эти контакты для загрузки кода и связи с платой.

загрузить код в ESP32-CAM, можно использовать USB-to-UART TTL конвертер на PL2303HX

Чтобы загрузить код в ESP32-CAM, можно использовать USB-to-UART TTL конвертер на PL2303HX. Как пользоваться USB-to-UART TTL конвертером рассказываю в статье: USB-to-UART PL2303HX. Установка драйверов на Linux, Windows, Mac OS.

Для загрузки кода подключим PL2303HX к ESP32-CAM по схеме.Для загрузки кода подключим PL2303HX к ESP32-CAM по схеме.

Вы можете использовать GPIO 1 и GPIO 3 для подключения других периферийных устройств, датчиков, сенсоров и модулей, после загрузки кода. Однако вы не сможете открыть Serial Monitor и посмотреть, все ли в порядке с вашей настройкой.

GPIO 0

GPIO 0 определяет, находится ли ESP32 в режиме прошивки или нет. Этот GPIO имеет внутреннее подключение к подтягивающему резистору 10 кОм.

Когда GPIO 0 подключен к GND, ESP32 переходит в режим прошивки, и вы можете загружать код на плату.

После загрузки кода, для того чтобы ESP32 работала «нормально», вам просто нужно отключить GPIO 0 от GND.

Подключение карты MicroSD

Следующие контакты используются для взаимодействия с картой памяти microSD, когда она установлена в соответствующий разъем на плате.

MicroSD card ESP32
CLK GPIO 14
CMD GPIO 15
DATA0 GPIO 2
DATA1 / flashlight GPIO 4
DATA2 GPIO 12
DATA3 GPIO 13

Если вы не используете карту microSD, вы можете использовать эти контакты как обычные входы / выходы. Вы можете посмотреть руководство по распиновке ESP32, чтобы увидеть особенности этих контактов.

Все эти GPIO являются RTC и поддерживают ADC: GPIO 2, 4, 12, 13, 14 и 15.

Фонарик (GPIO 4)

ESP32-CAM имеет очень яркий встроенный светодиод, который может работать как вспышка при съемке.

ESP32-CAM имеет очень яркий встроенный светодиод, который может работать как вспышка при съемке.

Фонарик — этот светодиод внутренне подключен к GPIO 4.

Этот GPIO также подключен к слоту для карты microSD, поэтому у вас могут возникнуть проблемы при попытке использовать оба устройства одновременно — фонарик загорится при использовании карты microSD.

Примечание: один из наших читателей поделился, что у вас не будет этой проблемы, если вы инициализируете карту microSD следующим образом, потому что карта microSD не будет использовать эту линию данных. *

SD_MMC.begin("/sdcard", true)

* после проверки было обнаружено, что это работает, и что светодиод не дает такого эффекта вспышки. Однако светодиод продолжает гореть с низкой яркостью – возможно при проверке был упущен какой-то момент.

GPIO 33 - встроенный красный светодиод

Рядом с кнопкой RST есть встроенный красный светодиод. Этот светодиод внутренне подключен к GPIO 33. Вы можете использовать этот светодиод, чтобы указать, что что-то происходит. Например, если Wi-Fi подключен, светодиод горит красным или наоборот.

Рядом с кнопкой RST есть встроенный красный светодиод. Этот светодиод внутренне подключен к GPIO 33.

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

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

void setup() {
  pinMode(33, OUTPUT);
}
void loop() {
  digitalWrite(33, LOW);
  delay(500);
  digitalWrite(33, HIGH);
  delay(500);
}

Подключения камеры

Соединения между камерой и ESP32-CAM AI-Thinker показаны в следующей таблице.

OV2640 CAMERA ESP32 Variable name in code
D0 GPIO 5 Y2_GPIO_NUM
D1 GPIO 18 Y3_GPIO_NUM
D2 GPIO 19 Y4_GPIO_NUM
D3 GPIO 21 Y5_GPIO_NUM
D4 GPIO 36 Y6_GPIO_NUM
D5 GPIO 39 Y7_GPIO_NUM
D6 GPIO 34 Y8_GPIO_NUM
D7 GPIO 35 Y9_GPIO_NUM
XCLK GPIO 0 XCLK_GPIO_NUM
PCLK GPIO 22 PCLK_GPIO_NUM
VSYNC GPIO 25 VSYNC_GPIO_NUM
HREF GPIO 23 HREF_GPIO_NUM
SDA GPIO 26 SIOD_GPIO_NUM
SCL GPIO 27 SIOC_GPIO_NUM
POWER PIN GPIO 32 PWDN_GPIO_NUM

Итак, определение контактов для ESP32-CAM AI-Thinker в среде Arduino IDE должно быть следующим:

#define PWDN_GPIO_NUM  32
#define RESET_GPIO_NUM -1
#define XCLK_GPIO_NUM  0
#define SIOD_GPIO_NUM  26
#define SIOC_GPIO_NUM  27
#define Y9_GPIO_NUM    35
#define Y8_GPIO_NUM    34
#define Y7_GPIO_NUM    39
#define Y6_GPIO_NUM    36
#define Y5_GPIO_NUM    21
#define Y4_GPIO_NUM    19
#define Y3_GPIO_NUM    18
#define Y2_GPIO_NUM    5
#define VSYNC_GPIO_NUM 25
#define HREF_GPIO_NUM  23
#define PCLK_GPIO_NUM  22

Заключение

Надеюсь, что вы нашли это руководство для GPIO ESP32-CAM полезным. Если у вас есть какие-либо советы или дополнительная информация о GPIO ESP32-CAM, напишите комментарий ниже.

Смотрите мои проекты с использованием ESP32-CAM:

Понравилась статья Распиновка ESP32-CAM AI-Thinker. Назначение GPIO? Не забудь поделиться с друзьями в соц. сетях.

А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.

Спасибо за внимание!

Технологии начинаются с простого!

Фотографии к статье

Файлы для скачивания

Принципиальная схема в PDF-формате Принципиальная схема в PDF-формате.pdf26 Kb 1990 Скачать

Комментарии

Ваше Имя*

Dmitriy

Гость: Dmitriy (26 августа, 2022 в 17:17)

статья ок!

Сергей

Гость: Сергей (26 января, 2022 в 22:50)

Прошить не удалось! Что делать? Может модуль неисправен или некачественная пайка?

Данные с порта:

rst:0x3 (SW_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)

configsip: 0, SPIWP:0xee

clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00

mode:DIO, clock div:1

load:0x3fff0018,len:4

load:0x3fff001c,len:1216

ho 0 tail 12 room 4

load:0x40078000,len:10944

load:0x40080400,len:6388

entry 0x400806b4

Guru Meditation Error: Core 0 panic'ed (IllegalInstruction). Exception was unhandled.

Memory dump at 0x40145f7c: 81004136 ffffffff ffffffff

Core 0 register dump:

PC : 0x40145f82 PS : 0x00060a30 A0 : 0x800860c2 A1 : 0x3ffbbac0

A2 : 0x3ff44574 A3 : 0x000000e1 A4 : 0x0ffd114c A5 : 0x00000000

A6 : 0x00000000 A7 : 0x00000000 A8 : 0x81004136 A9 : 0x3ff44024

A10 : 0xb0000040 A11 : 0x00000001 A12 : 0x00000040 A13 : 0x3ff420c0

A14 : 0x3ffbd3c4 A15 : 0x00000004 SAR : 0x0000000f EXCCAUSE: 0x00000000

EXCVADDR: 0x00000000 LBEG : 0x4008d0aa LEND : 0x4008d0b5 LCOUNT : 0x00000000

ELF file SHA256: 0000000000000000

Backtrace: 0x40145f82:0x3ffbbac0 0x400860bf:0x3ffbbae0 0x400eb381:0x3ffbbb10 0x400d30b0:0x3ffbbb30 0x400d3025:0x3ffbbb50 0x400d39f1:0x3ffbbb70 0x400ea5da:0x3ffbbba0 0x4008fe76:0x3ffbbbc0


Разработка проектов