TFT ekranlar renkli, piksel tabanlı LCD ekranlardır; Arduino ve ESP32 projelerinde genellikle SPI ile bağlanan ST7735 (1,8 inç), ST7789 ve ILI9341 (2,4-2,8 inç) sürücülü modüller kullanılır. Bağlantı için VCC, GND, SCK, MOSI (SDA), CS, DC (RS/A0), RST ve arka ışık (LED/BL) pinleri gerekir. Ekranlar 3,3V lojikle çalışır; ESP32 ile doğrudan, Arduino Uno ile seviye dönüştürme gerektirebilir. ESP32'de TFT_eSPI, Arduino'da Adafruit GFX kütüphaneleri yaygındır.
Renkli grafikler, simgeler, sensör göstergeleri ya da küçük oyunlar... Projelerinize renkli bir arayüz eklemenin en ekonomik yolu küçük TFT ekranlardır. Bu rehberde TFT ekran çeşitlerini, Arduino ve ESP32 ile bağlantıyı ve sık karşılaşılan sorunları anlatıyoruz.
TFT ekran nedir?
TFT (Thin Film Transistor) ekran, her pikseli ince film transistörlerle kontrol edilen, renkli ve arka ışıklı bir LCD ekran türüdür. Hobi modüllerinde ekranı süren bir sürücü entegresi (ST7735, ST7789, ILI9341 gibi) bulunur; mikrodenetleyici bu sürücüye SPI ile piksel verisi gönderir.
Yaygın TFT ekranlar
| Ekran | Çözünürlük | Sürücü | Örnek |
|---|---|---|---|
| 1,44 inç | 128x128 | ST7735 | 1,44 inç SPI TFT |
| 1,8 inç | 128x160 | ST7735S | 1,8 inç ST7735S, 1,8 inç SPI TFT |
| 2,4 inç | 240x320 | ILI9341 | 2,4 inç ILI9341 |
| 2,4 inç dokunmatik | 240x320 | ILI9341 + dokunmatik denetleyici | 2,4 inç dokunmatik ILI9341 |
| 4,3 inç kartlı | 800x480 | ESP32-S3 ile entegre | ESP32-S3 4,3 inç dokunmatik kart |
TFT ekran pinleri ve bağlantı
| Ekran pini | Görevi | ESP32 (örnek) | Arduino Uno (örnek) |
|---|---|---|---|
| VCC | Besleme | 3,3V | 5V (regülatörlü modülde) ya da 3,3V |
| GND | Toprak | GND | GND |
| SCK (SCL) | SPI saat | GPIO 18 | D13 |
| MOSI (SDA) | SPI veri | GPIO 23 | D11 |
| CS | Çip seçme | GPIO 5 | D10 |
| DC (RS, A0) | Komut/veri seçimi | GPIO 2 | D9 |
| RST | Sıfırlama | GPIO 4 | D8 |
| LED (BL) | Arka ışık | 3,3V ya da PWM pini | 3,3V ya da dirençle 5V |
Modül etiketlerindeki SDA ve SCL adları burada I2C değil, SPI'nin veri ve saat hatlarıdır. Pin numaraları örnektir; kodda tanımladığınız pinlerle aynı olmalıdır.
3,3V lojik seviyesine dikkat
TFT ekranların çoğu 3,3V lojikle çalışır; ESP32 gibi 3,3V kartlarla doğrudan bağlanır, 5V'luk Arduino Uno ile kullanılırken sinyal hatlarına seviye dönüştürücü ya da seri dirençler eklenmesi önerilir. Bazı modüllerde bu dönüşüm kart üzerinde hazırdır; ürün bilgisini kontrol edin. Ayrıca bir renkli ekranın görüntü verisi büyük olduğu için Arduino Uno'da yavaş çalışır; akıcı grafikler için ESP32 çok daha uygundur. Karşılaştırma için ESP32 ve ESP8266 rehberimize bakın.
TFT ekran adım adım nasıl çalıştırılır?
- Kütüphane: ESP32 için TFT_eSPI, Arduino için Adafruit GFX ile ekranın sürücü kütüphanesini (Adafruit ST7735 ya da ILI9341) kurun.
- Ayar: TFT_eSPI'de kullanılan sürücüyü, çözünürlüğü ve pinleri kütüphanenin ayar dosyasında tanımlayın.
- Test: Kütüphanenin örnek kodlarından birini (grafik testi) yükleyin.
- Döndürme: setRotation() ile ekranı yatay ya da dikey kullanın.
- Çizim: fillScreen(), drawString(), fillRect() gibi fonksiyonlarla metin ve şekiller çizin. Titremeyi azaltmak için ekranın tamamını değil, yalnızca değişen bölgeyi yeniden çizin.
Dokunmatik TFT ekranlar
Dokunmatik modüllerde ekranın üzerinde dirençli ya da kapasitif bir dokunmatik katman ve ayrı bir dokunmatik denetleyici bulunur. Dirençli dokunmatik (ör. XPT2046 denetleyicili) ekranlar SPI hattını paylaşan ayrı bir CS pini kullanır ve kalibrasyon gerektirir. ESP32-S3 tabanlı büyük dokunmatik kartlar ise LVGL gibi grafik kütüphaneleriyle telefon benzeri arayüzler yapmaya olanak tanır.
Sık sorulan sorular
TFT ekran neden beyaz kalıyor?
Arka ışık yanıyor ama sürücü başlatılamamıştır. Kodda seçilen sürücü modeli (ST7735, ST7789, ILI9341) ve pin tanımları ekranla uyuşmuyor olabilir; bağlantıları ve kütüphane ayarlarını kontrol edin.
Renkler neden yanlış görünüyor?
Bazı ekranlarda renk sırası (RGB ya da BGR) ya da renk tersine çevirme ayarı farklıdır. Kütüphanedeki ilgili ayar ya da ekran tipi değiştirilerek düzeltilir.
TFT ekran ile OLED farkı nedir?
TFT ekranlar renklidir, daha büyük boyutlarda bulunur ve arka ışık kullanır. OLED ekranlar küçük boyutlarda çok yüksek kontrast sunar ve arka ışık gerektirmez.
Ekrandaki görüntü neden titriyor?
Her döngüde ekranın tamamını silip yeniden çizmek titremeye yol açar. Yalnızca değişen alanları yeniden çizmek ya da ESP32'de bellek tamponu (sprite) kullanmak titremeyi önler.
TFT ekran SD kartla birlikte kullanılır mı?
Birçok TFT modülünde SD kart yuvası bulunur ve aynı SPI hattını farklı bir CS pini ile paylaşır. Resim dosyaları SD karttan okunup ekranda gösterilebilir.
Özet
- TFT, renkli ve arka ışıklı bir LCD ekran türüdür.
- ST7735, ST7789 ve ILI9341 en yaygın sürücülerdir; SPI ile bağlanır.
- Ekranlar 3,3V lojikle çalışır; Uno ile seviye uyumuna dikkat edilir.
- ESP32'de TFT_eSPI, Arduino'da Adafruit GFX yaygındır.
- Yalnızca değişen bölgeyi çizmek titremeyi önler.
