ARDUINO LCD
Arduino projeleriniz bir noktaya kadar ledlerle konuşur: yandı, söndü, yanıp söndü. Ama sıcaklığı, sayacı ya da bir menüyü göstermek istediğinizde led yetmez — projenin bir ekrana ihtiyacı vardır. En ucuz ve en klasik çözüm, 16x2 karakter LCD: iki satır, satır başına 16 karakter. Bu yazıda bağlantısından koduna, Arduino ile LCD kullanmanın tamamını adım adım kuruyoruz.
Arduino Nedir?
Arduino, açık kaynaklı bir fiziksel programlama platformudur: üzerindeki mikrodenetleyici, bilgisayarda yazılan kodla programlanır ve kartın giriş-çıkış pinlerine bağlanan sensörleri okur, ledleri-motorları sürer. Devre şemaları ve yazılımı açık olduğu için hem hazır kart alınabilir hem ekosistemi devasadır. Bu yazıdaki örnek, ailenin en yaygın üyesi olan Arduino Uno üzerinden ilerliyor.
Gerekli Malzemeler ve Bağlantı
Liste kısadır: Arduino Uno, 16x2 karakter LCD, breadboard, jumper kablolar ve kontrast ayarı için 10 kiloohmluk bir potansiyometre. LCD'nin 16 bacağı vardır ama klasik 4 bit bağlantıda yalnızca altısı Arduino'ya gider: RS ve E kontrol uçları ile D4-D7 veri uçları. Besleme (VDD/VSS), arka aydınlatma (A/K — dirençle) ve kontrast ucu (V0 — potansiyometrenin orta bacağına) breadboard üzerinden bağlanır.

İlk kural, yeni başlayanların en çok takıldığı yer: LCD bağlandı, kod yüklendi, ekran bomboş — arıza değil, kontrast ayarıdır. Potansiyometre çevrilince karakterler belirir. İkinci klasik hata, koddaki pin numaraları ile gerçek kablolamanın uyuşmamasıdır; şemayı ve kodu yan yana kontrol etmek dakikalar kazandırır.
Arduino LCD Kodu
Yazılım tarafını Arduino IDE ile birlikte gelen LiquidCrystal kütüphanesi üstlenir. Ekrana iki satır yazı yazan tam örnek:
#include <LiquidCrystal.h>
// RS, E, D4, D5, D6, D7 pinleri
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
void setup() {
lcd.begin(16, 2); // 16 sutun, 2 satir
lcd.print("Arduino LCD"); // 1. satira yaz
lcd.setCursor(0, 1); // 2. satirin basina gec
lcd.print("Ilk ornek");
}
void loop() {
}
Komutların iş bölümü nettir: lcd.begin ekran boyutunu tanımlayıp başlatır, lcd.print imlecin bulunduğu yerden yazar, lcd.setCursor(sütun, satır) imleci taşır — (0, 1) ikinci satırın başıdır. lcd.clear() ekranı siler. Standart karakter LCD'ler Türkçe karakterleri hazır içermez; ekrana yazılacak metinlerde ASCII karakterler kullanmak en pratik yoldur.

Sonraki Adımlar
Bu iskelet kurulduktan sonra kapı ardına kadar açıktır: sıcaklık sensörü okuyup dereceyi LCD'de göstermek, buton sayacı yapmak, kayan yazı (scrollDisplayLeft) denemek... Kablo kalabalığından kurtulmak isteyenler için I2C arayüzlü LCD modülleri aynı işi yalnızca iki veri kablosuyla yapar — kütüphane değişir, mantık aynı kalır.

Arduino'yu sensörlerden motor kontrolüne sistemli biçimde öğrenmek isteyenler için Arduino eğitimi uygulamalı bir yol haritası sunar; kartın altındaki elektroniği — direnç, transistör, devre okuma — sağlamlaştırmak için elektronik eğitimi doğal temeldir.
Sıkça Sorulan Sorular
Arduino ile LCD ekrana yazı yazdırmak için hangi kütüphane kullanılır?
Standart paralel bağlantılı karakter LCD'lerde LiquidCrystal kütüphanesi kullanılır; kodun başına include LiquidCrystal.h satırı eklenir. Kütüphane Arduino IDE içinde hazır gelir. I2C arayüzlü modüllerde ise LiquidCrystal_I2C kütüphanesi tercih edilir, bu daha az pin kullanır.
16x2 LCD ne anlama gelir?
16x2 ifadesi ekranın 2 satır ve her satırda 16 karakter gösterebildiğini belirtir, yani toplam 32 karakter görüntülenir. Bu, hobi projelerinde en yaygın kullanılan karakter LCD boyutudur. Daha fazla bilgi gerektiğinde 20x4 gibi büyük ekranlar veya grafik LCD'ler kullanılır.
lcd.begin ve lcd.print komutları ne işe yarar?
lcd.begin komutu ekranın boyutunu tanımlar; örneğin lcd.begin parantez içinde 16 virgül 2 ile 16 sütun ve 2 satır ayarlanır ve ekran başlatılır. lcd.print ise tırnak içine yazılan metni imlecin bulunduğu konumdan itibaren ekrana yazar. Bu iki komut LCD kullanımının temelini oluşturur.
lcd.setCursor komutu neden gerekir?
setCursor, ekrana yazılacak metnin başlayacağı konumu belirler; ilk değer sütunu, ikinci değer satırı gösterir. Örneğin setCursor parantez içinde 0 virgül 1 ikinci satırın başına geçer. Bu komut olmadan tüm metin varsayılan başlangıç noktasından yazılır ve satırları ayrı ayrı kontrol etmek mümkün olmaz.
Arduino LCD bağlantısında breadboard ne işe yarar?
Breadboard, lehim yapmadan bileşenleri ve kabloları geçici olarak bağlamaya yarayan delikli bir karttır. LCD'nin bacakları ile Arduino pinleri arasındaki bağlantılar jumper kablolarla breadboard üzerinde kurulur. Bu sayede devre kolayca değiştirilebilir, hata yapıldığında bağlantı sökülüp yeniden yapılabilir.
LCD ekranda yazı görünmüyorsa ne kontrol edilmeli?
Önce kontrast ayar potansiyometresi çevrilmeli; yanlış ayar yazıyı görünmez kılar. Ardından LCD'nin besleme ve toprak bağlantıları, data pinlerinin koddaki tanımlarla aynı olup olmadığı kontrol edilir. Kütüphanenin doğru eklendiği ve lcd.begin komutunun çağrıldığı da doğrulanmalıdır. Arka aydınlatma bağlantısı da gözden geçirilmelidir.


