Press "Enter" to skip to content

ESP32 CAM pins

Miro 0

ESP32-CAM AI-Thinker

 

ESP32-CAM je vývojová doska s čipom ESP32-S, kamerou OV2640, slotom na microSD kartu a niekoľkými GPIO na pripojenie periférií. Pozrieme sa na ESP32-CAM GPIO a ako ich používať.

Napájacie piny

ESP32-CAM sa dodáva s tromi ​​ ​​ GND ​​ kolíky (sfarbené čiernou farbou) a dva napájacie kolíky (zafarbené červenou farbou): ​​ 3,3 V ​​ a ​​ 5V .

 

ESP32-CAM môžete napájať cez ​​ 3,3 V ​​ alebo ​​ 5V ​​ piny. Mnoho ľudí však hlásilo chyby pri napájaní ESP32-CAM s 3,3 V, preto vždy odporúčame napájať ESP32-CAM cez 5V kolík.

 

Výstupný pin

Na sieťotlači je tiež špendlík označený ako ​​ VCC (vyfarbené žltým obdĺžnikom). Tento kolík by ste nemali používať na napájanie ESP32-CAM. To je výstupný napájací kolík. Môže mať výstup 5V alebo 3,3V.

 

V našom prípade má ESP32-CAM výstup 3,3V, či už je napájaný 5V alebo 3,3V. Vedľa kolíka VCC sú dve podložky. Jeden označený ako 3,3V a druhý ako 5V.

Ak sa pozriete pozorne, mali by ste mať prepojku na 3,3V podložkách. Ak chcete mať výstup 5V na kolíku VCC, musíte toto spojenie odspájkovať a prispájkovať 5V podložky.

 

Sériové piny

GPIO 1 ​​ a ​​ GPIO 3 ​​ sú sériové kolíky (TX a RX, v tomto poradí). Pretože ESP32-CAM nemá vstavaný programátor, musíte tieto piny použiť na komunikáciu s doskou a nahranie kódu.

Reset

​​ RST ​​ tento pin sa dá použiť na vzdialený reset. Ja ho veľmi úspešne použivam pri programovaní.

Pripojím ho na RESET / DTR (CTS) na USB2SERIAL.

 

 

Pre programovanie ESP32-CAM používam Arduino IDE a konvertor USB2Serial modul alebo FTDI.

Ak použiješ (lebo môžeš) ​​ GPIO 1 ​​ a ​​ GPIO 3 ​​ na pripojenie ďalších periférií, ako sú výstupy alebo senzory po nahratí kódu. Potom ale nieje možné použiť sériový monitor napr. na výpis priebehu spojenia s WiFi.

 

GPIO 0 - programovanie

Prepojením ​​ GPIO 0 ​​ a ​​ ​​ GND ​​ sa povoľuje nahratie programu do ESP32.

 

GPIO 4 – lampa (blesk)

ESP32-CAM má veľmi jasnú vstavanú LED, ktorá môže pri fotografovaní fungovať ako blesk . Táto LED je interne pripojená ​​ GPIO 4 .

 

Pretože GPIO je pripojené aj k slotu na microSD kartu, pri pokuse o použitie oboch naraz môžete mať problémy – pri použití microSD karty sa rozsvieti.

 

 

GPIO 16 - programovanie

Pin ​​ GPIO 16 ​​ je vnútorne pripojený na pull-up 10k odpor. Dá sa použiť ako vstup pre tlačidlo. Niektoré materiály hovoria, že je to RX z UART2 (toto ešte nemám overené).

 

 

GPIO 33 – vstavaná červená LED

Vedľa tlačidla RST je na doske červená LED dióda. Táto LED je interne pripojená ​​ GPIO 33 . Pomocou tejto LED diódy môžete signalizovať, že sa niečo deje. Ak je napríklad pripojené Wi-Fi, LED dióda svieti na červeno alebo naopak. Táto LED pracuje s obrátenou logikou, takže LOW signál zapína

a HIGH vypína.

 

Pripojenie kamery ESP32-CAM AI-Thinker

 

KAMERA OV2640

ESP32

Názov premennej v kóde

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

Používam knižnicu esp_camera.h a nastavenie CAMERA_MODEL_AI_THINKER.

Modul mojej kamery je OV2640 s rozlíšením 1600 x 1200 pixelov.

Pripojenie MicroSD karty

 

MicroSD karta

ESP32

CLK

GPIO 14

CMD

GPIO 15

DATA0

GPIO 2

DATA1 / ESP32-CAM (blesk)

GPIO 4

DATA2

GPIO 12

DATA3

GPIO 13

 

Samozrejme ak nepoužijeme SD kartu, môžeme GPIO 2, 4, 12, 13, 14 a 15 použiť ako vstupy a výstupy.

Formát karty je FAT32. Kapacita 4GB (niektorý skúšali aj 16GB a išlo to).

Knižnice sú FS.h a SD_MMC.h.

 

Poznámky:

 

Blikanie internej LED pri prihlasovaní sa do WiFi

 

 ​​​​ int led0s = LOW;//LED svieti

 ​​​​ WiFi.begin(SSID1, PWD);

 ​​​​ Serial.print("Connecting to WiFi");

 ​​​​ while (WiFi.status() != WL_CONNECTED)

 ​​​​ {

 ​​ ​​ ​​​​ delay(500);

 ​​ ​​ ​​​​ Serial.print(F("."));

 ​​ ​​ ​​​​ digitalWrite(LED0, led0s);

 ​​ ​​ ​​​​ led0s = !led0s;

 ​​​​ }

 ​​​​ ip = WiFi.localIP();

 ​​​​ Serial.println(F("WiFi connected"));

 ​​​​ Serial.println("");

 ​​​​ digitalWrite(LED0, LOW);

MiroR 2021 ​​ 

http://hobbyport.unisep.eu ​​