KoteqoriyasızTək kartlı mikrokontrollerlər

ESP32 CAM Board – Necə başlamaq olar və LED-i necə sayrışıdırmaq olar.

Bu dərsdə sizə ESP32-CAM inkişaf(development) lövhəsindən istifadə edərək bir LED-in necə yandırıb-söndürməyi göstərəcəyəm. Bu modulla, görüntülərə uzaqdan giriş imkanı olan WiFi / Bluetooth layihələrini inkişaf etdirə bilərsiniz. ESP32-CAM, ESP32-S çipi, bir OV2640 kamerası, kənar perferialları birləşdirmək üçün bir neçə GPIO və rabitə mövcud olmadığı zaman şəkilləri saxlamaq üçün bir microSD kart yuvası olan bir inkişaf lövhəsidir.
Hələlik təməl bilikləri öyrənərək başlayaq.

Tələb olunan hissələr

ESP32-CAM Lövhəsi

Şəkil 1

ESP32-CAM modulu, görüntü yayımı, üz tanıma, görüntü işləmə və ən əsası daxili Wifi və Bluetooth-a ehtiyac duyan tətbiqetmələrdə geniş istifadə olunmağa başlayır. ESP32 çipi o qədər güclüdür ki, hətta şəkilləri işləyə bilər. Burdan başqa, I2C, SPI, UART rabitə ilə yanaşı PWM və DAC çıxışları da daxildir.

İndi lövhənin ümumi pin quruluşu barədə danışaq. İrəlilədikcə şəkil 2-ni izləyə bilərsiniz.

Şəkil 2

GPIO 1 (TX)GPIO 3 (RX) ardıcıl (serial) xəbərləşmə pinləridir. Lövhədə yerləşmiş bir proqramlayıcı çip olmadığı üçün bir FTDI proqramçısı ilə əlaqə qurmaq və kodu yükləmək üçün bu pinləri istifadə etməlisiniz. Digər peferialları birləşdirmək üçün də GPIO 1 və GPIO 3 istifadə edə bilərsiniz. Ancaq unutmayın, bunları məşğul etsəniz, Serial Monitoru aça bilməyəcəksiniz.

GPIO 0, ESP32-nin proqramlama (flashing mode) rejimində olub olmadığını təyin edir. GPIO 0 GND-yə qoşulduqda, ESP32 proqramlama rejimdə olur.

GPIO 16 varsayılan olaraq bir UART pinidir. Bununla birlikdə, giriş olaraq istifadə edə bilərsiniz. Daxili olaraq 10k Ohm yuxarı çəkmə (pull-up) müqavimətinə bağlıdır.

Üç GND sancağı (qara rəng) və iki güc sancağı (qırmızı rəng) var: 3.3V və 5V. Lövhə 3.3V və ya 5V pinlər vasitəsilə qida ilə təchiz edilə bilər. Bununla birlikdə, bir çox insan lövhəni 5V pini ilə qidalandırmağı məsləhət görür. Beləliklə, buna hörmətlə yanaşacağıq 🙂 .

Diqqət:
Lövhədə həmçinin VCC (sarı rəng) pin də var. Kartı qidalanadırmaq üçün bu sancağı (pini) istifadə etməməlisiniz. Bu bir çıxış güc pinidir. İstər 5V, istərsə də 3.3V ilə işləsə də, 3.3V çıxış verə bilər.

Bu pinlər daxili olaraq microSD kart oxuyucusuna bağlıdır:

  • GPIO 14: CLK
  • GPIO 15: CMD
  • GPIO 2: Data 0
  • GPIO 4: Data 1 (həmçinin lövhədəki LED-ə də bağlıdır)
  • GPIO 12: Data 2
  • GPIO 13: Data 3


Sancaqlar microSD kart üçün istifadə edilmirsə, bu sancaqları adi giriş / çıxış kimi istifadə edə bilərsiniz. Bütün bu GPIO’lar RTC’dir və ADC’yi dəstəkləyir: GPIO’lar 2, 4, 12, 13, 14 ve 15.

GPIO 33, RST düyməsinin yanında yerləşmiş bir LEDdir. Lövhədəki LED tərs məntiqlə işləyir, ona görə onu yandırmaq üçün “sıfır” (LOW) və söndürmək üçün “bir” (HİGH) bir siqnal göndərirsiniz.

Kamera ilə ESP32-CAM AI-Thinker arasındakı kamera əlaqələri aşağıdakı şəkildə göstərilir.

Şəkil 3

Şəkil 4

Kart bir batareya və ya kompüterinizdəki USB port kimi mövcud olan hər hansı bir enerji məbəyi ilə qidalandırıla bilər. Bu qurğuda, şəkil 4-də olduğu kimi FTDI güc pinləri vasitəsilə USB portu ilə təchiz ediləcəkdir. Buna görə FTDI GND-ni Board GND-yə bağlayarıq. VCC -ni də eyni formada birləşdiririk. (Narıncı tel) FTDI TX-nı Lövhənin RX-nə və FTDI RX-ni Lövhənin TX-nə (Ağ tel) qoşun.

Qeyd: diaqramdakı FTDI pinləri FTDI cihazınız ilə uyğun olmaya bilər. Serigrafi etiketini yoxladığınızdan əmin olun.

GPIO 0, ESP32-nin proqramlama rejimində olub olmadığını təyin etdiyindən, ESP32-nin proqramlama rejimində olması üçün GPIO 0-u GND-yə bağlamalıyıq. Kodu yüklədikdən sonra GPIO0, GND pinindən ayrılmalıdır.

FTDI istifadə edərək proqramlaşdırma


İnkişaf lövhəmiz Arduino IDE istifadə edərək proqramlaşdırıla bilər, lakin bunun üçün bir FTDI istifadə etməliyik. Yuxarıdakı sxemini tamamladıqdan sonra FTDI-ni kompüterə qoşa bilərik.

Kodu lövhəyə yükləmək üçün növbəti addımları izləyin:

1 – Tools> Board-a gedin və AI-Thinker ESP32-CAM seçin. ESP32 əlavəsini quraşdırmalısınız. Əks təqdirdə, bu lövhə lövhələr menyusunda görünməyəcəkdir. Quraşdırmanı etməmisinizsə, aşağıda necə edəcəyinizə dair bir təlimat var.

2 – Tools> Port‘a gedin və lövhənin bağlı olduğu COM portunu seçin.

3 – Sadəlik üçün lövhənizə boş bir eskiz yükləyə bilərsiniz.

4 – Debug (.) pəncərəsində ardıcıl nöqtələr görməyə başladığınız zaman, bortdakı RST düyməsini basın. Bir neçə saniyədən sonra kod lövhəyə uğurla yüklənməlidir.

Şəkil 5

5 – “Done uploading” (“Yüklənmə tamamlandı“) mesajını gördükdə, GPIO 0-u GND-dən çıxartmağı və lövhəni hazır vəziyyətə gətirmək üçün bortdakı Sıfırla düyməsini basmağı unutmayın.

ESP32 Kitabxanasını və Əlavəsini quraşdırın


ESP32-CAM kartını Arduino IDE ilə proqramlaşdırmaq üçün Arduino IDE-nin quraşdırılması ilə yanaşı ESP32 əlavəsinin də quraşdırılmış olması lazımdır.

Başlamadan əvvəl, Arduino IDE-nin ən son versiyasını kompüterinizdə quraşdırdığınızdan əmin olun. Ən son versiyanı arduino.cc/en/Main/Software-dən əldə edə bilərsiniz.

Arduino IDE-də ESP32 əlavəsini və lövhəsini quraşdırmaq üçün növbəti addımları izləyin.

Arduino IDE-də File> Preferences bölməsinə daxil olun

Şəkil 6

https://dl.espressif.com/dl/package_esp32_index.json -nu aşağıdakı şəkildəki “Additional Board Manager URLs” qırmızı ilə işarələnmiş sahəyə daxil edin. Sonra “OK” düyməsini vurun:

Şəkil 7
  • İdarəetmə Menecerini açın. Tools > Board > Boards Manager -ə gedin
Şəkil 8
  • ESP32 axtarın və “ESP32 by Espressif Systems” üçün quraşdırma düyməsini basın. Bir neçə saniyədən sonra quraşdırılmalıdır.

Bu addımları atdıqdan sonra ESP32-CAM kartı hazır olmalıdır. ESP32 kartını kompüterinizə qoşun. Arduino IDE-də Tools> Board menyusunu açın və şəkil 10-dakı kimi lövhəni seçin. Bizim vəziyyətimizdə AI-Thinker ESP32-CAM. Doğru portu seçin və proqramlaşdırmağa hazırdır.

Şəkil 9

Kodlaşdırma


//LED BUILT_IN is GPIO 33 
void setup() {
  pinMode(33, OUTPUT); // Set the pin as output
}

// Remember that the pin work with inverted logic
// LOW to Turn on and HIGH to turn off
void loop() {
  digitalWrite(33, LOW); //Turn on
  delay (1000); //Wait 1 sec
  digitalWrite(33, HIGH); //Turn off
  delay (1000); //Wait 1 sec
}

Ədəbiyyat

  1. https://randomnerdtutorials.com/esp32-cam-ai-thinker-pinout/
  2. https://randomnerdtutorials.com/about/
  3. https://randomnerdtutorials.com/program-upload-code-esp32-cam/
  4. https://loboris.eu/ESP32/ESP32-CAM%20Product%20Specification.pdf
  5. https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf
  6. https://www.geekering.com/categories/embedded-sytems/esp32/ricardocarreira/esp32-cam-board-how-to-begin-and-blink-a-led/

Əlaqəli Məqalələr

0 0 səslər
Article Rating
Abunə ol
Xəbər ver
guest

0 Comments
Sətir içi geri bildirimlər
Bütün şərhlərə baxın
Back to top button
0
Fikirlərinizi bilmək istərdik,lütfən şərh yazın.x