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);