Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Bugun men sizni ESP32 Wrover Kit bilan tanishtirmoqchiman, bu men odatda ishlatadigan ESP32 (Wroom) dan farq qiladi. Wrover - bu ko'p funktsiyalarga ega va juda periferik ishlab chiqish paneli. Men sizga ESP32 Wrover Kit bilan dasturning namunasini ko'rsataman, u displeyda va SD -kartada yozishni, shuningdek tasvirlarni o'z ichiga oladi.
1 -qadam: kirish
ESP32-Wrover-Kit ESP32 modulidan tashqari ko'plab xususiyatlarga ega. Bu to'plamda bizda o'rnatilgan 3,2 dyuymli LCD displey, yuqori tezlikdagi Micro-SD karta interfeysi va VGA kamera interfeysi mavjud. I / U pinlari ESP32 modulidan uzaytirilishi oson.
Kengashda shuningdek, USB protsessori orqali ESP32 -ni disk raskadrovka qilish uchun ishlab chiquvchilarga JTAG -dan foydalanish imkonini beradigan ko'p protokolli USB ko'prigi (FTDI FT2232HL) mavjud.
2 -qadam: Asosiy xususiyatlar
• 240 MGts chastotali ikki yadroli protsessor
• 4MB SPI PSRAM (statik soxta qo'chqor)
• O'rnatilgan USB-JTAG tuzatuvchi
• LCD displey SPI 3.2”
• Micro-SD karta interfeysi
• VGA kamera interfeysi
• I / Ularni kengaytirish
www.espressif.com/en/products/hardware/esp-wrover-kit/overview
Mana, ikkinchi rasmda men ushbu modulning xususiyatlarini tasvirlab beraman.
3 -qadam: Namoyish
4 -qadam: ESP32 Wrover
5 -qadam: kutubxona
WROVER_KIT_LCD -ni yuklab oling
LCD displeyga kirish uchun kutubxona.
Yuklab olish havola orqali amalga oshirilishi mumkin:
github.com/espressif/WROVER_KIT_LCD/archive/master.zip
Jildni oching../Documents/Arduino/libraries/
6 -qadam: yuklash
Dasturni taxtaga yuklash uchun biz Adafruit ESP32 Feather kartasini tanlashimiz kerak.
7 -qadam: Dastur
Jadvalni sinab ko'rish uchun WROVER_KIT_LCD kutubxonasidagi misollardan foydalanishingiz mumkin. O'qitish uchun biz uchta misolni tuzamiz. Bu ekranda va SD -kartada yozish / chizishni o'z ichiga oladi.
Kutubxonalar va o'zgaruvchilar
Keyin biz kutubxonalarni qo'shamiz. Ikki: esp_wp1.h va esp_wp2.h, ular vektorlardir va men yuklash havolalarini shu erda va ushbu maqolaning oxirida qoldirganman. Biz displeyni boshqarish uchun mas'ul ob'ektni ishga tushiramiz va ekranni boshqarish funktsiyasini bajaramiz.
#"SPI.h" ni qo'shish #"Adafruit_GFX.h" ni qo'shish #"WROVER_KIT_LCD.h" ni kiritish // lib de controle do display #include // lib de controle do micro-SD #include "esp_wp1.h" // imagem em HEX #"esp_wp2.h" ni o'z ichiga oladi // HEX WROVER_KIT_LCD tft tasma; // objeto Respável pelo controle do display int screen = 0; // tela nazorati
Sozlash
Ekranni ishga tushiring va butun ekranni kerakli rangga bo'yang.
void setup () {Serial.begin (115200); tft.begin (); // ko'rsatuv yoki ekran} // tugmachani o'chirish uchun bo'sh joy ClearScreen (int rang) {tft.fillScreen (rang); // pinta toda a tela}
Loop
Biz tuvalni landshaftga aylantiramiz, u boshqaruv o'zgaruvchisiga qarab o'zgaradi. Agar men 0 -holatni o'zgartirishni tanlasam, matn ekranda yoziladi. 1 -kommutator misolida biz SD -rasmlardan fayllarni va HEX -rasmlarni fayllardan chop etamiz (#include).
void loop (void) {tft.setRotation (1); // rotaciona para landshaft // bir vaqtning o'zida nazorat qilish (ekran) tugmasi (ekran) {0 holat: writeText (); // uzatish matnini ajratish; 1 -holat: writeImages (); // printa arquivos de imagens do SD e imagens HEX dos arquivos (#include) tanaffus; standart: ekran = -1; tanaffus; // volta pra tela inicial} ekran ++; }
writeText ()
Kodning bu qismi haqida batafsil ma'lumot berib, biz ekranni bo'yash va manba kelib chiqishi va hajmida kursor joylashuvi bilan shug'ullanamiz.
// yozish matnidan farq qiladigan matnlarni yozish () {clearScreen (WROVER_BLACK); // pinta toda a tela tft.setCursor (0, 0); // boshlang'ich tft.setTextColor (WROVER_WHITE) kursori; tft.setTextSize (1); // tamanho da fonte-1 tft.println ("Testando ESP32-WROVER-KIT"); tft.println (); tft.setTextColor (WROVER_YELLOW); tft.setTextSize (2); // tamanho da fonte - 2 tft.println ("Youtube | Instagram |"); tft.println ("Telegram | Facebook |"); tft.println ("Forum"); tft.println (); tft.setTextColor (WROVER_RED); tft.setTextSize (3); // tamanho da fonte - 3 tft.println ("Acesse:"); tft.println (); tft.setTextColor (WROVER_GREENYELLOW); tft.setTextSize (4); // tamanho da fonte - 4 tft.println ("FERNANDOK. COM"); kechikish (2000); }
writeImages ()
Bu funksiyada biz SD -kartani ishga tushiramiz va ikkita-j.webp
// printa arquivos de imagens do SD e imagens HEX dos arquivos (#include) void writeImages () {clearScreen (WROVER_WHITE); // rasmiy karta Serial.print ("SD -karta ishga tushirilmoqda …"); agar (! SD_MMC.begin ()) {Serial.println ("muvaffaqiyatsiz!"); qaytish; } Serial.println ("OK!"); tft.drawJpgFile (SD_MMC, "/fk_logo.jpg", 50, 50); // SD kechikishidan qochish (2000); ClearScreen (WROVER_WHITE); tft.drawJpgFile (SD_MMC, "/arduino_ide_logo.jpg", 60, 20); // SD kechikishidan qochish (2000); tft.setRotation (0); tft.dra-j.webp
8 -qadam: fayllar
Fayllarni yuklab oling:
INO
shohruh1.h
islombek