Arduino I2C LCD Kullanımı (LiquidCrystal_I2C) – Kapsamlı Rehber
Arduino I2C LCD kullanımı, projelerde az pinle ekran kontrolü sağlamak isteyenler için en pratik çözümlerden biridir.
Bu rehberde LiquidCrystal_I2C kütüphanesi ile 16x2 I2C LCD ekranın bağlantısı, kurulumu ve örnek kodları detaylı şekilde anlatılmaktadır.
Arduino I2C LCD Nedir?
I2C LCD ekranlar, klasik paralel LCD’lere göre yalnızca SDA ve SCL hatlarını kullanır.
Bu sayede hem kablo karmaşası azalır hem de Arduino üzerinde daha fazla pin boşta kalır.
Avantajları:
- Az pin kullanımı
- Kolay bağlantı
- Düşük güç tüketimi
- Hızlı entegrasyon
Gerekli Malzemeler
- Arduino Uno / Nano / Mega
- 16x2 I2C LCD ekran
- Jumper kablolar
- USB bağlantı kablosu
Arduino I2C LCD Bağlantı Şeması
| I2C LCD Pin | Arduino Uno |
|---|---|
| GND | GND |
| VCC | 5V |
| SDA | A4 |
| SCL | A5 |

Arduino Mega için:
SDA → Pin 20
SCL → Pin 21
LiquidCrystal_I2C Kütüphanesi Kurulumu
- Arduino IDE açılır
- Sketch → Include Library → Manage Libraries
- Arama alanına LiquidCrystal I2C yazılır
- LiquidCrystal_I2C (Frank de Brabander) kütüphanesi yüklenir

Arduino I2C LCD Merhaba Dünya Örneği
Aşağıdaki örnek, I2C LCD’nin çalıştığını test etmek için idealdir:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Merhaba!");
lcd.setCursor(0, 1);
lcd.print("Arduino I2C LCD");
}
void loop() {
}
LCD Üzerinde Yazı Konumlandırma
lcd.setCursor(sutun, satir);
lcd.print("Yazi");
Örnek kullanım:
lcd.setCursor(4, 1);
lcd.print("TEST");
Arduino I2C LCD Sayaç Uygulaması
Dinamik veri göstermek için sayaç örneği:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int sayac = 0;
void setup() {
lcd.init();
lcd.backlight();
}
void loop() {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Sayac Degeri:");
lcd.setCursor(0, 1);
lcd.print(sayac);
sayac++;
delay(1000);
}
I2C LCD Adresi Bulma (Çalışmıyorsa)
Bazı LCD’lerin adresi 0x3F olabilir. Aşağıdaki kod ile doğru adresi tespit edebilirsin:
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(9600);
for (byte i = 1; i < 127; i++) {
Wire.beginTransmission(i);
if (Wire.endTransmission() == 0) {
Serial.print("I2C Adres Bulundu: 0x");
Serial.println(i, HEX);
}
}
}
void loop() {}
Yaygın Sorunlar ve Çözümleri
LCD ekran boş görünüyor
-
I2C adresini kontrol et
-
Potansiyometreyi ayarla
Yazılar silik
- Kontrast potunu çevir (ekranın arkasında tornavida ile sağa sola çevirerek ekran parlaklığını ayarla)

Hiç çalışmıyor
-
SDA / SCL pinlerini kontrol et
-
Kütüphane doğru mu kontrol et
Arduino I2C LCD Nerelerde Kullanılır?
-
Sensör verisi gösterimi
-
Saat ve zamanlayıcı projeleri
-
Menü sistemleri
-
Akıllı ev projeleri
-
Robotik uygulamalar
Sonuç
Arduino I2C LCD (LiquidCrystal_I2C) kullanımı, hem yeni başlayanlar hem de ileri seviye kullanıcılar için vazgeçilmezdir. Bu rehber sayesinde kısa sürede projelerine ekran ekleyebilirsin.
Sık Aranan Anahtar Kelimeler
Arduino I2C LCD kullanımı, LiquidCrystal_I2C örnek, Arduino LCD bağlantı, 16x2 I2C LCD Arduino, Arduino ekran projeleri