ESP32-WROOM-32 1.9 İnç 170x320 IPS LCD Ekranlı WiFi Bluetooth Geliştirme Kartı - Type-C, CH340
ESP32-WROOM-32 1.9 İnç 170x320 IPS LCD Ekranlı WiFi Bluetooth Geliştirme Kartı - Type-C, CH340
ESP32-WROOM-32 1.9 inç LCD geliştirme kartı; klasik ESP32 platformunu, yüksek ve dar biçimli renkli bir ekranı, USB Type-C programlama bağlantısını ve tek hücreli lityum pil arayüzünü aynı kart üzerinde bir araya getirir. Harici ekran kablolaması gerektirmeden sıcaklık, nem, enerji, üretim, ağ durumu veya sensör verilerini görselleştiren kompakt IoT cihazları geliştirmek için pratik bir başlangıç noktasıdır.
Kartın merkezinde 240 MHz'e kadar çalışan çift çekirdekli Xtensa LX6 işlemcili ESP32-WROOM-32 modülü bulunur. Modül; 2,4 GHz 802.11 b/g/n WiFi, Bluetooth 4.2 BR/EDR ve Bluetooth Low Energy bağlantılarını destekler. 1.9 inç ST7789 tabanlı IPS TFT ekran 170x320 piksel çözünürlük ve SPI haberleşme sunar. Bu yapı; kablosuz gösterge paneli, masaüstü bilgi ekranı, taşınabilir sensör terminali, Bluetooth kumandası ve yerel web arayüzlü kontrol cihazı gibi projeleri tek kartla gerçekleştirmeyi kolaylaştırır.
CH340 USB-seri dönüştürücüsü sayesinde program yükleme ve seri hata ayıklama Type-C kablo üzerinden yapılır. EN ve BOOT düğmeleri, 30 pinli geliştirme kartı düzeni, 3,7 V lityum pil bağlantısı, şarj durum göstergesi ve kart üzerindeki PCB anteniyle hem masaüstü prototiplemeye hem de taşınabilir uygulamalara uygundur.

Öne Çıkan Özellikler
- ESP32-WROOM-32 modül ve çift çekirdekli 32 bit Xtensa LX6 işlemci
- 240 MHz'e kadar işlemci frekansı
- 4 MB SPI flash bellek; PDF'deki 32 Mbit değerin karşılığı
- 520 KB SRAM ve 448 KB ROM
- 2,4 GHz WiFi 802.11 b/g/n, istasyon ve erişim noktası çalışma modları
- Bluetooth 4.2 BR/EDR ve Bluetooth Low Energy
- 1.9 inç, 170x320 piksel, ST7789 sürücülü renkli IPS TFT LCD
- LCD için hızlı 4 telli SPI arayüzü
- USB Type-C güç, programlama ve seri haberleşme bağlantısı
- CH340 USB-UART dönüştürücü
- Kart üzerinde yaklaşık 2 dBi kazançlı PCB anten
- UART, SPI, I2C, I2S, PWM, ADC, DAC, dokunmatik algılama ve SDIO çevre birimleri
- EN sıfırlama ve BOOT firmware yükleme düğmeleri
- Tek hücreli 3,7 V Li-Po/Li-ion pil bağlantısı ve şarj göstergesi
- Arduino IDE, ESP-IDF, PlatformIO ve MicroPython ile geliştirilebilir yapı
- Yaklaşık 63,7 x 31,5 mm kart ölçüsü
Teknik Özellikler
| Ürün tipi | LCD ekranlı WiFi ve Bluetooth geliştirme kartı |
| Ana modül | ESP32-WROOM-32 |
| İşlemci | Çift çekirdekli 32 bit Xtensa LX6 |
| Saat frekansı | 240 MHz'e kadar |
| Flash bellek | 32 Mbit / 4 MB SPI flash |
| SRAM / ROM | 520 KB SRAM / 448 KB ROM |
| PSRAM | Belirtilmemiş / kartın standart sürümünde yok |
| WiFi | IEEE 802.11 b/g/n, 2,4 GHz; 802.11n ile 150 Mbps'e kadar fiziksel veri hızı |
| WiFi çalışma biçimleri | STA, SoftAP ve STA+AP |
| Bluetooth | Bluetooth 4.2 BR/EDR ve BLE |
| RF frekans aralığı | 2412-2484 MHz |
| Anten | Kart üzeri PCB anten, yaklaşık 2 dBi |
| Ekran | 1.9 inç IPS TFT LCD |
| Çözünürlük | 170 x 320 piksel |
| LCD sürücü | ST7789 |
| LCD arayüzü | 4 telli SPI |
| Aktif görüntü alanı | Yaklaşık 24,91 x 41,49 mm |
| Piksel aralığı | Yaklaşık 0,1465 x 0,1465 mm |
| Tipik parlaklık | Yaklaşık 400 cd/m² |
| Dokunmatik | Yok |
| USB arayüzü | USB Type-C |
| USB-seri dönüştürücü | CH340 |
| USB besleme | 5 V |
| GPIO lojik seviyesi | 3,3 V; 5 V toleranslı değildir |
| Pil bağlantısı | Tek hücreli 3,7 V Li-Po/Li-ion için kart üzeri soket |
| Varsayılan seri hız | 115200 bps |
| Boyut | Yaklaşık 63,7 x 31,5 mm |
| Paket içeriği | 1 adet geliştirme kartı |

ESP32-WROOM-32 Platformunun Sunduğu Güç
ESP32-WROOM-32, ağ bağlantısı ile gerçek zamanlı çevre birimi kontrolünü aynı sistemde birleştirir. İki işlemci çekirdeği sayesinde uygulama mantığı, ekran çizimi ve kablosuz protokol görevleri FreeRTOS üzerinde paylaştırılabilir. Basit Arduino projelerinde bu dağıtım arka planda yapılırken daha ileri uygulamalarda görevler belirli çekirdeklere sabitlenebilir.
Donanım hızlandırmalı AES, SHA, RSA ve rastgele sayı üretimi; güvenli istemci bağlantıları, HTTPS, MQTT/TLS ve kimlik doğrulamalı yerel arayüzler için temel sağlar. Ancak güvenlik yalnızca donanım özelliğiyle tamamlanmaz; güncel kütüphane, benzersiz parola, sertifika doğrulama ve güvenli güncelleme politikası kullanılmalıdır.
1.9 İnç ST7789 IPS LCD
170x320 çözünürlük, yatay veya dikey kullanılan dar ve uzun kullanıcı arayüzleri için uygundur. Sensör değerleri, durum ikonları, küçük grafikler, menüler, QR kodlar, sayaçlar ve ağ bilgileri rahat biçimde gösterilebilir. IPS panel yapısı geniş görüş açısı sunarken ST7789 sürücüsü 16 bit RGB565 renk verisiyle yaygın Arduino grafik kütüphaneleri tarafından desteklenir.
Ekran SPI üzerinden çalıştığı için I2C sensörlere göre daha yüksek veri hızına ulaşabilir. Tam ekran yenileme yine de önemli miktarda veri taşır: 170 x 320 x 2 bayt yaklaşık 108,8 KB ham görüntü verisidir. Akıcı arayüz için yalnızca değişen bölgeleri çizmek, büyük görselleri flash bellekte sıkıştırılmış tutmak ve gereksiz tam ekran temizlemelerinden kaçınmak yararlıdır.
LCD Bağlantıları ve Paylaşılan GPIO'lar
| LCD sinyali | ESP32 GPIO | Görevi |
|---|---|---|
| MOSI / SDA | GPIO23 | ESP32'den LCD'ye piksel ve komut verisi |
| SCLK | GPIO18 | SPI saat sinyali |
| CS | GPIO15 | LCD çip seçme |
| DC | GPIO2 | Komut / veri seçimi; kart LED'iyle de ilişkili olabilir |
| RST | GPIO4 | LCD donanım sıfırlama |
| BLK / BL | GPIO32 | Arka aydınlatma açma veya PWM parlaklık kontrolü |
| MISO | Bağlı değil | Standart ekran kullanımında LCD'den veri okunmaz |
LCD pinleri kartın yan sıralarında da görülebilir; fiziksel olarak dışarı çıkarılmış olmaları boşta oldukları anlamına gelmez. Aynı SPI hattına ek bir çevre birimi bağlanacaksa MOSI ve SCLK paylaşılabilir, ancak yeni cihaz için ayrı bir CS pini kullanılmalıdır. GPIO2, GPIO4, GPIO15 ve GPIO32 başka işlevlere atanırsa ekranın komut, reset, seçim veya arka aydınlatma kontrolü bozulabilir.

30 Pin Bağlantı Haritası
| Pin | Başlıca işlev | Kart üzerindeki not |
|---|---|---|
| EN | Çip etkinleştirme / reset | LOW seviyesinde ESP32 sıfırlanır |
| GPIO36 | ADC1_CH0, giriş | Yalnız giriş; dahili pull-up/pull-down yok |
| GPIO39 | ADC1_CH3, giriş | Yalnız giriş |
| GPIO34 | ADC1_CH6, giriş | Yalnız giriş |
| GPIO35 | ADC1_CH7, giriş | Yalnız giriş |
| GPIO32 | ADC1_CH4, Touch9, dijital I/O | LCD arka aydınlatma hattı |
| GPIO33 | ADC1_CH5, Touch8, dijital I/O | Genel kullanım için uygun |
| GPIO25 | ADC2_CH8, DAC1 | Analog çıkış üretilebilir |
| GPIO26 | ADC2_CH9, DAC2 | Analog çıkış üretilebilir |
| GPIO27 | ADC2_CH7, Touch7 | Dijital I/O ve dokunmatik algılama |
| GPIO14 | ADC2_CH6, Touch6, SPI CLK | Strapping işlevlerine dikkat |
| GPIO12 | ADC2_CH5, Touch5 | Açılışta HIGH zorlanmamalı |
| GPIO13 | ADC2_CH4, Touch4 | Genel dijital I/O |
| GND | Toprak | Harici devrelerle ortaklanır |
| VIN | 5 V besleme hattı | 3,3 V GPIO'ya bağlanmaz |
| GPIO23 | VSPI MOSI | LCD MOSI ile paylaşılır |
| GPIO22 | Varsayılan I2C SCL | I2C sensörler için uygundur |
| GPIO1 | UART0 TX | USB-seri programlama ve log hattı |
| GPIO3 | UART0 RX | USB-seri programlama ve log hattı |
| GPIO21 | Varsayılan I2C SDA | I2C sensörler için uygundur |
| GPIO19 | VSPI MISO | Ek SPI cihazından veri okumak için |
| GPIO18 | VSPI SCLK | LCD saat hattıyla paylaşılır |
| GPIO5 | VSPI SS / genel I/O | Strapping pini; reset seviyesine dikkat |
| GPIO17 | UART2 TX | Harici seri cihaz için uygun |
| GPIO16 | UART2 RX | Harici seri cihaz için uygun |
| GPIO4 | ADC2_CH0, Touch0 | LCD reset hattıyla paylaşılır |
| GPIO2 | ADC2_CH2, Touch2 | LCD DC ve kart LED göstergesiyle paylaşılır |
| GPIO15 | ADC2_CH3, Touch3 | LCD CS hattıyla paylaşılır |
| 3V3 | Regüle 3,3 V | Sensör ve 3,3 V çevre birimleri için |
Pin Kullanımında Kritik Noktalar
- GPIO34, GPIO35, GPIO36 ve GPIO39 yalnızca giriş olarak çalışır; çıkış veya PWM üretmez ve dahili pull-up/pull-down dirençleri yoktur.
- GPIO6-GPIO11 flash bellek için ayrılmıştır ve kartın yan pinlerine çıkarılmamıştır.
- ADC2 pinleri WiFi çalışırken sınırlıdır. Kablosuz bağlantı açıkken analog ölçüm için mümkünse GPIO32-GPIO39 arasındaki ADC1 kanallarını kullanın; LCD nedeniyle GPIO32'nin arka aydınlatmayla paylaşıldığını unutmayın.
- GPIO0 BOOT düğmesine bağlıdır ve yan başlığa çıkarılmamıştır. BOOT basılıyken reset veya USB bağlantısı kartı seri yükleme moduna alır.
- GPIO2, GPIO5, GPIO12 ve GPIO15 strapping pinleridir. Reset anındaki harici seviyeler açılış davranışını etkileyebilir.
- GPIO girişleri 5 V toleranslı değildir. 5 V sensör çıkışlarında seviye dönüştürücü veya uygun gerilim bölücü kullanılmalıdır.
Kart Üzerindeki Düğmeler, LED'ler ve Bağlantılar
| EN düğmesi | ESP32'yi sıfırlar ve programı yeniden başlatır |
| BOOT düğmesi | GPIO0'ı LOW yapar; manuel firmware yükleme moduna girişte kullanılır |
| PWR LED | Kart beslemesinin bulunduğunu gösterir |
| GPIO2 göstergesi | LCD DC hattıyla paylaşıldığı için ekran haberleşmesinde yanıp sönebilir |
| Şarj LED'i | Pil yokken yanıp sönebilir, şarj sırasında sabit yanar, dolduğunda söner |
| Type-C | 5 V güç, CH340 üzerinden programlama ve seri haberleşme |
| Pil soketi | Tek hücreli 3,7 V lityum pil bağlantısı |

Güç Besleme ve Pil Kullanımı
Kart USB Type-C üzerinden 5 V ile beslenebilir. ESP32 ve LCD'nin lojik devreleri kart üzerindeki regülatör üzerinden 3,3 V ile çalışır. Yan sıradaki VIN pini 5 V besleme hattı, 3V3 pini ise regüle 3,3 V hattıdır. Bu iki pin birbirine doğrudan bağlanmamalıdır.
Kart arkasındaki soket tek hücreli 3,7 V nominal Li-Po veya Li-ion pil içindir. Pil takılmadan önce soket polaritesi hem kart baskısından hem multimetreyle doğrulanmalıdır; JST tipi soketlerde üreticiler aynı fiziksel konnektörde farklı kablo polaritesi kullanabilir. 2S veya daha yüksek gerilimli pil bağlanmamalıdır.
- Pil ürün paketine dahil kabul edilmemelidir; paket içeriği 1 adet kart olarak verilmiştir.
- WiFi gönderimi ve LCD arka aydınlatması anlık akımı yükseltir; zayıf USB kablosu reset ve ekran kararmasına neden olabilir.
- Taşınabilir uygulamada ekranı boşta kapatmak veya parlaklığı azaltmak çalışma süresini belirgin biçimde uzatır.
- Pil şarj edilirken kart ve pilin havalandırılması, hasarlı veya şişmiş pil kullanılmaması gerekir.
- Karttaki şarj devresinin pil koruma devresi yerine geçtiği varsayılmamalı; korumalı hücre tercih edilmelidir.
Mekanik Ölçüler ve Montaj
Kart yaklaşık 63,7 mm uzunluğa ve 31,5 mm genişliğe sahiptir. PDF çiziminde ekran/ana PCB bölümünün yaklaşık 27,47 mm genişliği ve köşe montaj deliklerinin yaklaşık 2 mm çapı gösterilir. Dört köşe deliği, panel arkasına veya 3B baskı muhafazaya sabitlemeyi kolaylaştırır.
Muhafaza tasarımında Type-C fişinin çıkış alanı, BOOT ve EN düğmelerine erişim, anten önündeki boşluk, pil kablosunun bükülme yarıçapı ve LCD'nin görünür alanı hesaba katılmalıdır. PCB anteninin önüne metal vida, batarya veya toprak düzlemi yerleştirmek WiFi ve Bluetooth menzilini azaltabilir.

Yazılım ve Kütüphane Seçenekleri
| Araç / kütüphane | Uygun kullanım | Not |
|---|---|---|
| Arduino IDE | Hızlı prototip ve geniş örnek desteği | Kart profili ESP32 Dev Module |
| ESP-IDF | Üretim yazılımı, FreeRTOS, ağ ve düşük seviye kontrol | Espressif'in resmi geliştirme çerçevesi |
| PlatformIO | VS Code tabanlı proje, bağımlılık ve derleme yönetimi | Arduino veya ESP-IDF çatısı seçilebilir |
| Adafruit GFX + ST7789 | Kolay metin, şekil ve bitmap çizimi | Başlangıç için en anlaşılır seçeneklerden biri |
| TFT_eSPI | Hızlı sprite, grafik ve kapsamlı örnekler | Pin ve panel ayarları User_Setup dosyasında yapılır |
| LovyanGFX | Esnek panel yapılandırması ve yüksek performans | İleri seviye projeler için uygundur |
| LVGL | Buton, grafik, tema ve ekranlar içeren arayüz | 4 MB flash ve RAM bütçesi dikkatle yönetilmelidir |
| MicroPython | Eğitim ve hızlı Python prototipi | Uyumlu ST7789 sürücüsü ayrıca yüklenir |
Arduino IDE Kurulumu
- USB Type-C veri kablosuyla kartı bilgisayara bağlayın. Yalnız şarj kablosu programlama portu oluşturmaz.
- Gerekirse CH340 sürücüsünü işletim sisteminize kurun ve Aygıt Yöneticisi'nde USB-SERIAL CH340 portunu doğrulayın.
- Arduino IDE 2.x içinde Boards Manager bölümünden esp32 by Espressif Systems paketini kurun.
- Kart olarak ESP32 Dev Module seçin.
- Flash Size değerini 4MB, Flash Frequency değerini 80MHz, Flash Mode değerini QIO seçin.
- İlk denemede Upload Speed için 115200 kullanın; kararlı bağlantıda daha yüksek hız denenebilir.
- Library Manager üzerinden Adafruit GFX Library ve Adafruit ST7735 and ST7789 Library paketlerini kurun.
- Doğru COM portunu seçip ekran test programını yükleyin.


İlk LCD Testi - Adafruit ST7789
Aşağıdaki örnek dahili ekranı başlatır, arka aydınlatmayı açar ve temel metin ile renk bloklarını gösterir. Kod yalnızca bu kartın LCD bağlantılarına göre hazırlanmıştır.
#include#include #include #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 15 #define TFT_DC 2 #define TFT_RST 4 #define TFT_BL 32 Adafruit_ST7789 tft(TFT_CS, TFT_DC, TFT_RST); void setup() { pinMode(TFT_BL, OUTPUT); digitalWrite(TFT_BL, HIGH); SPI.begin(TFT_SCLK, -1, TFT_MOSI, TFT_CS); tft.init(170, 320); tft.setRotation(1); tft.fillScreen(ST77XX_BLACK); tft.setTextWrap(false); tft.setTextColor(ST77XX_CYAN); tft.setTextSize(2); tft.setCursor(12, 18); tft.println("ESP32-WROOM-32"); tft.setTextColor(ST77XX_WHITE); tft.setTextSize(1); tft.setCursor(12, 48); tft.println("1.9 inch ST7789 / 170x320"); tft.fillRect(12, 72, 70, 32, ST77XX_RED); tft.fillRect(88, 72, 70, 32, ST77XX_GREEN); } void loop() { }
Görüntü ters veya yönü yanlışsa `setRotation(0)` ile `setRotation(3)` arasındaki değerler denenebilir. Renkler ters görünüyorsa kullanılan kütüphanenin renk sırası ve inversion ayarı panel revizyonuna göre değiştirilmelidir. Ekran aydınlanıyor ancak içerik gelmiyorsa önce CS, DC, RST, MOSI ve SCLK tanımlarını kontrol edin.
Arka Aydınlatma Kontrolü
GPIO32 arka aydınlatma hattıdır. Basit aç/kapat kontrolü için dijital çıkış yeterlidir. Pil ömrü gereken projelerde kullanıcı etkinliği olmadığında ekranı kapatabilirsiniz.
const int LCD_BACKLIGHT = 32;
void screenBacklight(bool enabled) {
pinMode(LCD_BACKLIGHT, OUTPUT);
digitalWrite(LCD_BACKLIGHT, enabled ? HIGH : LOW);
}
Kademeli parlaklık için PWM kullanılabilir; Arduino-ESP32 çekirdek sürümleri arasında LEDC API adları değişebildiğinden projenizde kurulu çekirdeğin resmi LEDC örneğini temel alın. Çok düşük PWM frekansı görünür titreme, çok yüksek frekans ise bazı kart revizyonlarında yetersiz parlaklık kontrolü oluşturabilir.
WiFi Ağlarını Ekranda Listeleme
#includevoid showNetworks() { WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(200); tft.fillScreen(ST77XX_BLACK); tft.setTextSize(1); tft.setCursor(4, 4); tft.setTextColor(ST77XX_YELLOW); tft.println("Yakindaki WiFi aglari"); int count = WiFi.scanNetworks(); for (int i = 0; i < count && i < 10; i++) { tft.setTextColor(ST77XX_WHITE); tft.printf("%2d %-18s %4d dBm\n", i + 1, WiFi.SSID(i).substring(0, 18).c_str(), WiFi.RSSI(i)); } WiFi.scanDelete(); }
Bu fonksiyon önceki LCD örneğindeki `tft` nesnesini kullanır. Ürünle yapılabilecek taşınabilir ağ tarayıcı, kurulum yardımcısı veya sinyal seviye göstergesi projeleri için temel oluşturur. WiFi taraması güç tüketimini yükseltir; pilli projede tarama aralığı uzun tutulmalıdır.
WiFi Bağlantı Durumunu Gösterme
#includeconst char* ssid = "WIFI_ADI"; const char* password = "WIFI_SIFRE"; void connectAndShowIP() { WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); tft.fillScreen(ST77XX_BLACK); tft.setCursor(8, 12); tft.setTextColor(ST77XX_WHITE); tft.println("WiFi baglaniyor..."); unsigned long start = millis(); while (WiFi.status() != WL_CONNECTED && millis() - start < 15000) { delay(250); } tft.fillScreen(ST77XX_BLACK); tft.setCursor(8, 12); if (WiFi.status() == WL_CONNECTED) { tft.setTextColor(ST77XX_GREEN); tft.println("Baglanti tamam"); tft.setTextColor(ST77XX_WHITE); tft.println(WiFi.localIP()); tft.printf("RSSI: %d dBm\n", WiFi.RSSI()); } else { tft.setTextColor(ST77XX_RED); tft.println("Baglanti zaman asimi"); } }
Yerel Erişim Noktası ve Kurulum Ekranı
PDF'deki örnek akışta kart bir WiFi erişim noktası başlatır ve LCD üzerinde `192.168.4.1` adresini gösterir. Telefon veya bilgisayar bu ağa bağlanarak yerel ayar sayfasını açabilir. Bu yöntem ürün kurulumu sırasında WiFi adı, parola, cihaz etiketi, ekran teması veya sensör eşikleri almak için kullanılabilir.
#includevoid startSetupAccessPoint() { WiFi.mode(WIFI_AP); bool ok = WiFi.softAP("ESP32-LCD-Setup", "12345678"); tft.fillScreen(ST77XX_BLACK); tft.setCursor(8, 10); tft.setTextColor(ok ? ST77XX_GREEN : ST77XX_RED); tft.println(ok ? "Kurulum agi hazir" : "AP baslatilamadi"); if (ok) { tft.setTextColor(ST77XX_WHITE); tft.println("Ag: ESP32-LCD-Setup"); tft.print("Adres: "); tft.println(WiFi.softAPIP()); } }
Gerçek üründe örnekteki sabit parola değiştirilmelidir. Her cihaz için benzersiz kurulum parolası, ayarların kalıcı belleğe güvenli yazılması ve yapılandırma tamamlanınca erişim noktasının kapatılması önerilir.

Bluetooth Serial Örneği
Klasik Bluetooth SPP, Android terminal uygulamaları veya başka Bluetooth seri istemcilerle hızlı veri aktarımı için kullanılabilir. iOS cihazlarında klasik SPP yerine genellikle BLE GATT tabanlı uygulama gerekir.
#includeBluetoothSerial SerialBT; void setup() { Serial.begin(115200); SerialBT.begin("ESP32-LCD"); Serial.println("Bluetooth Serial hazir"); } void loop() { while (SerialBT.available()) { char c = SerialBT.read(); Serial.write(c); } while (Serial.available()) { SerialBT.write(Serial.read()); } }
I2C Sensör Bağlantısı
GPIO21 SDA ve GPIO22 SCL olarak kullanılabilir. BME280, SHT31, INA219, RTC veya ışık sensörü gibi I2C modüller aynı iki veri hattını farklı adreslerle paylaşabilir. Modülün 3,3 V lojikle uyumlu olduğundan ve gerekli pull-up dirençlerinin bulunduğundan emin olun.
#includevoid scanI2C() { Wire.begin(21, 22); Serial.println("I2C taramasi basliyor"); for (uint8_t address = 1; address < 127; address++) { Wire.beginTransmission(address); if (Wire.endTransmission() == 0) { Serial.printf("Cihaz bulundu: 0x%02X\n", address); } } }
Analog Sensör Okuma
WiFi ile aynı anda analog ölçüm yapılacaksa ADC1 kanalındaki girişler tercih edilmelidir. GPIO34 yalnız giriş olduğundan analog sensör için uygundur; ancak dahili pull-up olmadığı için sensör çıkışı boşta bırakılmamalıdır.
const int SENSOR_PIN = 34;
void showAnalogValue() {
int raw = analogRead(SENSOR_PIN);
tft.fillRect(8, 100, 210, 30, ST77XX_BLACK);
tft.setCursor(8, 100);
tft.setTextColor(ST77XX_CYAN);
tft.printf("ADC ham deger: %d", raw);
}
ESP32 ADC doğrusal olmayan ve karttan karta değişebilen bir yapıya sahiptir. Hassas voltaj ölçümünde kalibrasyon, örnek ortalaması ve bilinen referansla karşılaştırma yapılmalıdır. GPIO'ya uygulanan gerilim hiçbir durumda 3,3 V'u aşmamalıdır.
Uyku Modu ve Taşınabilir Kullanım
ESP32 deep sleep moduna alınmadan önce LCD arka aydınlatması kapatılmalıdır. Ekranın görüntü belleği güç kesilmediği sürece son kareyi tutabilir; fakat arka ışık kapalıyken görünmez. Kartın regülatör, CH340, şarj devresi ve LED'leri nedeniyle toplam kart tüketimi çıplak ESP32 çipinin veri sayfasındaki deep sleep değerinden yüksek olabilir.
#includevoid sleepForFiveMinutes() { digitalWrite(32, LOW); // LCD arka isigini kapat WiFi.disconnect(true); WiFi.mode(WIFI_OFF); btStop(); esp_sleep_enable_timer_wakeup(5ULL * 60ULL * 1000000ULL); esp_deep_sleep_start(); }
Ekran Performansını İyileştirme
- Her döngüde tüm ekranı temizlemek yerine yalnızca değeri değişen dikdörtgen bölgeyi güncelleyin.
- Sabit arka plan ve ikonları flash bellekte tutun; büyük ham görsellerin 4 MB flash bütçesini hızla tükettiğini hesaba katın.
- Flicker oluşuyorsa TFT_eSPI sprite veya LVGL draw buffer gibi ara tampon tekniklerini değerlendirin.
- WiFi işlemlerini ve ekran çizimini uzun süre bloklayan `delay()` çağrıları yerine zamanlayıcı veya FreeRTOS görevleriyle ayırın.
- SPI hattına ikinci cihaz eklendiğinde ayrı CS kullanın ve her sürücünün SPI transaction ayarlarını doğru kapattığından emin olun.
- Metin değişirken eski rakam kalıntılarını önlemek için sabit genişlikli alan veya arka plan renkli metin çizimi kullanın.
Örnek Proje Fikirleri
| Proje | Kullanılabilecek özellikler | Ekranda gösterilebilecekler |
|---|---|---|
| Kablosuz hava istasyonu | BME280/SHT31, WiFi, NTP, MQTT | Sıcaklık, nem, basınç, mini grafik |
| Enerji izleme terminali | INA219/Modbus, WiFi, yerel kayıt | Gerilim, akım, güç ve tüketim |
| Masaüstü bilgi ekranı | NTP, HTTP API, takvim veya sunucu verisi | Saat, görev, hava, sistem durumu |
| WiFi kurulum paneli | SoftAP, web sunucusu, NVS | IP adresi, QR kod, bağlantı durumu |
| Bluetooth kumanda | BLE GATT veya Bluetooth SPP | Bağlantı, komut, telemetri ve durum |
| Seri protokol analizörü | UART2 GPIO16/17, veri tamponu | Gelen paketler, sayaç ve hata durumu |
| Akıllı sera paneli | I2C sensörler, röle sürücü, WiFi | Ortam değerleri, eşikler ve çıkışlar |
| Taşınabilir ağ tarayıcı | WiFi scan, pil, ekran | SSID, RSSI, kanal ve güvenlik tipi |

Sorun Giderme
| Belirti | Olası neden | Kontrol |
|---|---|---|
| COM portu görünmüyor | Şarj kablosu, CH340 sürücüsü veya USB portu | Veri kablosu deneyin, sürücüyü ve Aygıt Yöneticisi'ni kontrol edin |
| Yükleme bağlantı hatası | Kart download moduna girmedi | BOOT'a basılı tutup yüklemeyi başlatın; bağlanınca bırakın |
| Ekran tamamen karanlık | GPIO32 arka aydınlatma kapalı | TFT_BL pinini OUTPUT ve HIGH yapın |
| Arka ışık var, görüntü yok | Yanlış sürücü, çözünürlük veya SPI pinleri | ST7789, 170x320 ve 23/18/15/2/4 pinlerini doğrulayın |
| Görüntü kaymış veya kesilmiş | Panel offset veya rotation ayarı | 170x320 profilini ve kütüphane panel offset ayarını kontrol edin |
| Renkler ters | RGB/BGR veya inversion farkı | Kütüphane renk sırası ve inversion seçeneğini değiştirin |
| WiFi açılınca analog okuma bozuluyor | ADC2, WiFi ile paylaşılıyor | GPIO34-39 gibi uygun ADC1 girişine geçin |
| Rastgele reset | Yetersiz besleme veya zayıf kablo | Kısa kaliteli kablo ve yeterli 5 V kaynak kullanın |
| Kart açılmıyor | Strapping pininde hatalı seviye | GPIO2, 5, 12 ve 15 üzerindeki harici bağlantıları ayırın |
| Pil şarj olmuyor | Polarite, kablo veya hücre sorunu | 1S pil gerilimini ve soket polaritesini ölçerek doğrulayın |
Ürün Seçerken Neden Bu Kart?
Ayrı ESP32 kartı, ayrı ST7789 ekran ve bağlantı kabloları yerine tek PCB kullanılması montaj süresini ve temas hatalarını azaltır. Ekran bağlantıları önceden tanımlı olduğu için ilk çalışan arayüze daha hızlı ulaşılır. Klasik ESP32'nin WiFi ile Bluetooth Classic/BLE desteği, yeni nesil yalnız BLE sunan bazı modellerden farklı olarak eski Bluetooth seri cihazlarla da iletişim kurulmasına olanak verir.
Uzun 170x320 ekran, küçük metin tabanlı göstergelerden daha zengin arayüzlere geçiş sağlar; 30 pinli düzen ise ekran dışında sensör, röle, seri cihaz ve I2C çevre birimi eklemek için yeterli genişleme alanı bırakır. Type-C, pil soketi ve montaj delikleri sayesinde yalnız breadboard deneyi değil, taşınabilir veya kutulu prototip de hazırlanabilir.
Kutu İçeriği
- 1 adet ESP32-WROOM-32 1.9 inç LCD ekranlı geliştirme kartı
USB Type-C kablo, lityum pil, sensörler ve muhafaza ayrıca temin edilir. Pin header'ın lehimli veya lehimsiz teslim durumu satın alınan fiziksel varyanta göre ürün görselinden kontrol edilmelidir.
Görsel Dosya Yerleşimi
| Dosya | İçerik |
|---|---|
| esp32-wroom-lcd-01.jpg | Ana ürün görseli |
| esp32-wroom-lcd-02.jpg | LCD ve kart ön görünümü |
| esp32-wroom-lcd-03.jpg | Kart arka yüzü ve kullanım alanları |
| esp32-wroom-lcd-04.jpg | Pin haritası |
| esp32-wroom-lcd-05.jpg | Mekanik ölçüler |
| esp32-wroom-lcd-06.jpg | Pil, LED, düğme ve Type-C açıklamaları |
| esp32-wroom-lcd-07.jpg | CH340 ve Arduino kurulumu |
| esp32-wroom-lcd-08.jpg | Kart yöneticisi ve derleme ayarları |
| esp32-wroom-lcd-09.jpg | WiFi AP LCD örneği yükleme ekranı |
Bu dosyalar IdeaSoft'a aynı adlarla yüklendiğinde HTML içindeki `/class/INNOVAEditor/assets/` bağlantıları doğrudan çalışır. Benzersiz ürün öneki, daha önce yüklenen başka ürünlerin `01.jpg` gibi genel isimli görsellerinin üzerine yazılmasını önler.
Kaynaklar ve Teknik Belgeler
- Ürün web kılavuzu
- Espressif ESP32-WROOM-32 resmi veri sayfası
- Espressif ESP32 Series resmi veri sayfası
- Arduino-ESP32 resmi kurulum belgesi
- ST7789V denetleyici veri sayfası