电脑基础 · 2023年4月19日

ESP32-CAM AI THINKER 引脚排列:GPIO 用法说明

ESP32-CAM 是一款开发板,带有一个 ESP32-S 芯片、一个 OV2640 摄像头、microSD 卡插槽和几个用于连接外设的 GPIO。在本指南中,我们将介绍 ESP32-CAM GPIO 以及如何使用它们。

引脚排列图


下图显示了 ESP32-CAM AI-Thinker 的引脚排列图。

ESP32-CAM AI THINKER 引脚排列:GPIO 用法说明

电路原理示意图


下图显示了 ESP32-CAM 的原理图。

ESP32-CAM AI THINKER 引脚排列:GPIO 用法说明

电源引脚

ESP32-CAM 配备三个GND针脚(黑色)和两个电源针脚(红色):3.3V5V.

您可以通过3.3V5V引 脚。但是,许多人在为 ESP32-CAM 提供 3.3V 电源时报告了错误,因此我们始终建议通过 5V 引脚为 ESP32-CAM 供电

电源输出引脚

丝网印刷上的别针也标记为VCC(用黄色矩形着色)。您不应使用该引脚为 ESP32-CAM 供电。这是一个输出电源引脚。它可以输出 5V 或 3.3V。

在我们的例子中,ESP32-CAM 输出 3.3V,无论是采用 5V 还是 3.3V 供电。在VCC引脚旁边,有两个焊盘。一个标记为3.3V,另一个标记为5V。

ESP32-CAM AI THINKER 引脚排列:GPIO 用法说明

 如果仔细观察,您应该在3.3V焊盘上有一个跳线。如果要在VCC引脚上具有5V的输出,则需要解除该连接并焊接5V焊盘。

串行引脚

GPIO 1GPIO 3是串行引脚(分别为 TX 和 RX)。由于 ESP32-CAM 没有内置编程器,因此您需要使用这些引脚与开发板通信并上传代码。

将代码上传到 ESP32-CAM 的最佳方式是使用 FTDI 编程器

可以使用GPIO 1GPIO 3在上传代码后连接其他外围设备,如输出或传感器。但是,您将无法打开串行监视器并查看您的设置是否一切顺利。

GPIO 0

GPIO 0确定 ESP32 是否处于闪烁模式。该 GPIO 在内部连接到一个上拉 10k 欧姆电阻器。

当 GPIO 0 连接到 GND 时,ESP32 将进入闪烁模式,您可以将代码上传到开发板。

  • GPIO 0连接到GND闪烁模式下的 ESP32-CAM

要使 ESP32"正常"运行,您只需断开 GPIO 0 与 GND 的连接即可。

MicroSD 卡连接

以下引脚用于在 microSD 卡运行时与其接口。

微SD卡 ESP32 处理器
佛罗里达州。 GPIO 14
断续器 GPIO 15
数据0 GPIO 2
数据1 /手电筒 GPIO 4
数据2 GPIO 12
数据3 GPIO 13

如果您没有使用microSD卡,则可以将这些引脚用作常规输入/输出。您可以查看 了解这些引脚的特性。

所有这些 GPIO 都是 RTC 并支持 ADC:GPIO 2、4、12、13、14 和 15

LED(GPIO 4)

ESP32-CAM 具有非常明亮的内置 LED,可在拍照
时用作闪光灯。该 LED 在内部连接到GPIO 4.

该GPIO还连接到microSD卡插槽,因此在尝试同时使用两者时可能会遇到麻烦 - 使用microSD卡时手电筒会亮起。

注意:我们的一位读卡器分享说,如果您按如下方式初始化microSD卡,则不会遇到此问题,因为microSD卡不会使用该数据行。

SD_MMC.begin("/sdcard", true)

*我们发现这有效,并且LED不会产生闪光效果。但是,LED仍然以低亮度亮起 - 我们不确定是否遗漏了某些内容。

GPIO 33 – 内置红色指示灯

ESP32-CAM AI THINKER 引脚排列:GPIO 用法说明

在 RST 按钮旁边,有一个板载红色 LED。该 LED 在内部连接到GPIO 33.您可以使用此 LED 指示正在发生某些事情。例如,如果连接了 Wi-Fi,则 LED 为红色,反之亦然。

该 LED 与倒置逻辑配合使用,因此您发送了一个信号将其打开,然后信号将其关闭。

您可以尝试上传以下代码段,看看该 LED 是否亮起。

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

相机连接

相机与 ESP32-CAM AI-Thinker 之间的连接如下表所示。

OV2640 摄像头 ESP32 处理器 代码中的变量名称
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
断续器 GPIO 0 XCLK_GPIO_NUM
断续器 GPIO 22 PCLK_GPIO_NUM
虚拟同步 GPIO 25 VSYNC_GPIO_NUM
HREF GPIO 23 HREF_GPIO_NUM
断续器 GPIO 26 SIOD_GPIO_NUM
断续器 GPIO 27 SIOC_GPIO_NUM
电源引脚 GPIO 32 PWDN_GPIO_NUM
因此,Arduino IDE 上 ESP32-CAM AI-Thinker 的引脚定义应如下所示:
#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

我们希望 ESP32-CAM GPIO 指南对您有所帮助。