Web siteme hoşgeldiniz, 20 Temmuz 2026
muratdonmez.com.tr
Anasayfa » IOT » I2C LCD Ekran: Dört Kabloyla Hızlı ve Temiz Çözüm

I2C LCD Ekran: Dört Kabloyla Hızlı ve Temiz Çözüm

I2C LCD Ekran: Dört Kabloyla Hızlı ve Temiz Çözüm

Geleneksel bir 16×2 karakter LCD ekranı, Arduino’ya bağlamak için en az 6, genellikle 10’dan fazla dijital pin kullanmayı gerektirir. Bu durum, özellikle çok sayıda sensör ve bileşenin olduğu karmaşık projelerde Arduino’nun pinlerini hızla tüketir. I2C LCD Ekran, bu sorunu çözmek için standart bir LCD ekranın arkasına küçük bir kart eklenmesiyle ortaya çıkar.

Bu ek kart (genellikle bir PCF8574 I/O genişletici çip içerir), I2C haberleşme protokolünü kullanarak ekranı kontrol eder. Böylelikle, bağlantı için sadece dört kabloya (Güç ve I2C) ihtiyaç duyulur.

I2C LCD Ekran Çalışma Prensibi: PCF8574 I/O Genişletici

I2C LCD modülünün temelinde PCF8574 (8-bit Uzaktan Giriş/Çıkış Port Genişletici) yatar.

  1. Genişletme: PCF8574, Arduino’dan gelen iki I2C sinyalini (SDA ve SCL) alır ve bunu LCD’nin ihtiyacı olan 8’den fazla kontrol sinyaline dönüştürür.
  2. Seri Haberleşme: I2C protokolü, veriyi seri olarak aktarır. Yani tüm kontrol bilgisi, sadece iki pin üzerinden (SDA ve SCL) tek tek gönderilir ve PCF8574 çipi bunu paralel verilere çevirerek LCD’ye iletir.
  3. Adresleme: I2C protokolü adres tabanlı çalıştığı için, aynı I2C pinlerine (SDA/SCL) birden fazla I2C LCD veya başka bir sensör bağlayabilirsiniz. Her cihazın benzersiz bir adresi (genellikle 0x27 veya 0x3F) bulunur.

I2C LCD Ekran

I2C LCD Ekran Bağlantı Şeması

I2C-LCD ekranın bağlantısı, standart LCD’ye göre çok daha basittir:

I2C LCD Modülü PiniESP32 PiniFonksiyon
VCC5VGüç Girişi
GNDGNDToprak
SDAGPIO 21I2C Veri Hattı
SCLGPIO 22I2C Saat Hattı

Not: Arduino, Arduino Mega ve diğer kartlarda SDA ve SCL pinleri farklı yerlerde olabilir.

I2C LCD’yi kullanmak için genellikle “LiquidCrystal_I2C” kütüphanesine ihtiyaç duyulur.

  1. I2C Adresi: Kütüphaneyi kurduktan sonra, kodun ilk adımı ekranın I2C adresini doğru tanımlamaktır. En yaygın adresler 0x27 ve 0x3F‘tir. Eğer ekranınız çalışmazsa, bu iki adresi deneyebilir veya bir I2C Tarayıcı (Scanner) kodu kullanarak doğru adresi bulabilirsiniz.
  2. Kütüphane Başlatma: Kodu başlatırken LiquidCrystal_I2C lcd(I2C_ADRES, SÜTUN, SATIR) formatı kullanılır:
    // Adres, sütun (16) ve satır (2) tanımlanır
    LiquidCrystal_I2C lcd(0x27, 16, 2);
    
  3. Temel Komutlar:
    • lcd.init(); : Ekranı başlatır.
    • lcd.backlight(); : Arka ışığı açar.
    • lcd.setCursor(sütun, satır); : İmleci istenen konuma taşır.
    • lcd.print("Metin"); : Ekrana metin yazar.

I2C LCD Ekran Kontrast ve Arka Işık Ayarı

I2C LCD modüllerinde iki ayar bileşeni bulunur:

  1. Kontrast Potansiyometresi: Modül üzerindeki küçük mavi veya siyah bir trimpot (ayarlanabilir direnç) bulunur. Bir tornavida ile bu potansiyometreyi çevirerek, ekrandaki karakterlerin koyuluğunu (kontrastını) ayarlayabilirsiniz. Karakterler görünmüyorsa veya çok silikse bu ayar yapılmalıdır.
  2. Arka Işık Jumper’ı: Arka ışığı kalıcı olarak kapatıp açmak için bir Jumper (atlama teli) bulunabilir. Eğer güç tüketimini minimuma indirmek istiyorsanız bu jumper’ı çıkarabilirsiniz. Yazılımla kontrol için ise lcd.backlight() ve lcd.noBacklight() komutları kullanılır.

I2C LCD ekranlar, basit metin tabanlı çıktılar gerektiren tüm Arduino projelerinde (termometreler, sayaçlar, basit menüler) pin tasarrufu ve temiz bağlantı avantajlarıyla öne çıkar. Yalnızca doğru I2C adresini bulduğunuzdan ve kontrast ayarını yaptığınızdan emin olmanız yeterlidir.

ESP32 I2C LCD Ekran Bağlantı Şeması

ESP32 (Arduino IDE) Örnek Kodu

Gerekli Kütüphane: “LiquidCrystal_I2C by Frank de Brabander”

//muratdonmez.com.tr
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// (I2C_Adresi, Sütun_Sayısı, Satır_Sayısı)
// Adres 0x27 veya 0x3F olabilir.
LiquidCrystal_I2C lcd(0x27, 16, 2); // 16 Sütun, 2 Satır

void setup() {
  Serial.begin(115200);

  lcd.init(); // LCD'yi başlat
  lcd.backlight(); // Arka ışığı aç

  Serial.println("I2C LCD Testi.");
  Serial.println("Ekranda bir şey görmezseniz, kontrast potansiyometresini çevirin.");

  lcd.setCursor(0, 0); // (Sütun, Satır)
  lcd.print("ESP32 LCD Testi");
  lcd.setCursor(0, 1);
  lcd.print("Merhaba!");
}

void loop() {
  lcd.setCursor(10, 1);
  lcd.print(millis() / 1000); // Geçen saniyeyi yaz
  delay(500);
}

Eğer akıllı ev, IOT projeleri ile ilgili sorularınız veya yapmak istediğiniz bir projeniz varsa, yedek alma ve yedekten dönme planınız veya felaket kurtarma planınız yoksa, işletmeniz için nasıl bir Sunucu, Bilgisayar veya Kesintisiz Güç Kaynağı seçmeniz gerektiğini bilmiyorsanız danışmanlık hizmetlerimden faydalanmak isterseniz bana WhatsApp üzerinden ulaşabilirsiniz.

İlgili Yazılar

Sık Sorulan Sorular

  • Standart LCD yerine neden I2C LCD kullanmalıyım?
    Standart 16×2 LCD ekranlar 10’dan fazla Arduino pini gerektirirken, I2C LCD ekranlar sadece 2 veri pinine (SDA ve SCL) ihtiyaç duyar. Bu, diğer sensörler ve aktüatörler için pin tasarrufu sağlar.
  • I2C LCD modülündeki PCF8574 çipi ne işe yarar?
    PCF8574, bir I/O Genişletici çipidir. Arduino’nun I2C (Seri) sinyalini alarak, LCD ekranın ihtiyacı olan çoklu (Paralel) kontrol sinyallerine dönüştürür.
  • I2C LCD ekranımın doğru adresini nasıl bulabilirim?
    En yaygın adresler 0x27 veya 0x3F’tir. Ekranınız bunlardan biriyle çalışmazsa, internette bulabileceğiniz bir “I2C Scanner” (I2C Tarayıcı) kodu ile tüm olası adresleri tarayarak ekranınızın doğru adresini otomatik olarak tespit edebilirsiniz.
  • Ekranda sadece kareler/bloklar görünüyor, metin neden görünmüyor?
    Bunun iki temel nedeni olabilir: 1) Ekranın I2C Adresi yanlış tanımlanmıştır. 2) Modül üzerindeki kontrast potansiyometresi doğru ayarlanmamıştır. Bir tornavida ile potansiyometreyi yavaşça çevirerek karakterlerin görünürlüğünü ayarlamalısınız.
  • I2C LCD’de kontrast ayarını nasıl yaparım?
    Kontrast, modül kartının üzerinde bulunan küçük mavi veya siyah renkli potansiyometre (trimpot) ile manuel olarak ayarlanır. Bir tornavida kullanarak bu potansiyometreyi yavaşça çevirerek en net metin görüntüsünü elde edebilirsiniz.

Etiketler:

BU KONUYU SOSYAL MEDYA HESAPLARINDA PAYLAŞ
Yorumlar

Henüz yorum yapılmamış.

Yorum Yaz