28 Mayıs 2023 Pazar

Arduino ile LCD ekran kullanımı

Görselde gördüğünüz LCD ekran düşündüğümüz yeni nesil ekranların aksine daha basit yapıda likit kristal kimyasal yapıda olan ve ekrandaki hücrelerde sadece harf, sayı ve karakter gösterebilen ekranlardır. Bu LCD ekranların Arduino ile programlanarak ekranda istediğimiz yazı ve karakterleri çıkarmak için gerekli bağlantı ve kodları bu sayfada göreceksiniz.


Kullanacağımız LCD ekran modül eklentili bir ekrandır. Normal LCD ekranlarda modül yoktur ve bağlantı yapmak için aşağıda görüldüğü gibi kalabalık bir kablo grubu ile çalışmak gerekmektedir. Bu kalabalıklığı ortadan kaldıran I2C adlı bir modül ile LCD ekranı Arduino'ya bağlamak daha da kolay oluyor.

Modülsüz ve I2C modüllü LCD ekran örneği

LCD ekran üzerindeki I2C modülünde bulunan 4 pin ile bağlantı sağlayacağız. Bu pinlerden; 

  • GND, Arduino'da GND pinine
  • VCC, Arduino'da 5V pinine
  • SDA, Arduino'da SDA pinine
  • SCL, Arduino'da SCL pinine bağlanır.
    Not: Bazı Arduinolarda SDA ve SCL pinleri yoktur. Bu durumda analog pinlerden A4 ve A5 pinleri kullanılır.
Bu bağlantılar yapıldıktan sonra Arduino kodlamaya geçilir. LCD ekranın I2C ile birlikte çalışan modül kütüphanesi Arduino'ya eklenmelidir. (Bu kütüphaneyi buraya tıklayarak zip dosyası olarak indirip Arduino IDE programına zip kütüphane olarak ekleyebilirsiniz.)


Kodlama öncesinde LCD ekranın fiziki yapısını da tanımak gerekir. Kullanacağımız LCD ekran 16 sütundan 2 satırdan oluşmaktadır. Bu boyutlardan farklı boyutlarda da LCD ekranlar bulunmaktadır. Sütunlar ve satırlar 0'dan başlamaktadır. Komutlarla hangi konuma hangi karakteri yazacağımız önemli bu yüzden bu sütun ve satır mantığını bilmek gerekir. Konumlandırma da önce sütun sonra satır belirtilir. setCursor konumu ile konumlandırma yapılır. Örnek;
lcd.setCursor(4,1) => 4. sütun 1. satıra 

Kütüphane eklendikten sonra kodlarda kütüphane eklemesi, lcd tanıtımı ve kodların çalıştırılması ile LCD ekranda istediğimiz yazıları İngilizce alfabesine uygun bir şekilde görüntüleyebiliriz. Yani kullanacağımız bazı harfler (büyük i,ş,ğ gibi harfler) ve karakterler LCD ekranda görünmeyebilir ya da farklı şekillerde görünebilir. Aşağıdaki kodlar ve yanlarındaki açıklama satırlarında gerekli anlatımlar yapılmıştır.

#include <LiquidCrystal_I2C.h>//lcd ekranın çalışması için gerekli kodları içeren kütüphane eklendi
LiquidCrystal_I2C lcd(0x27,16,2);//16 sütun 2 satırlı 0x27 kodla çalışan lcd ekran lcd olarak tanıtıldı

void setup() {
  lcd.begin();//lcd ekranın çalışması başlatıldı
}

void loop() {
 lcd.setCursor(2,0);//2. sütun 0. satıra konumlan
 lcd.print("BILGISAYAR"); // 2.sütun 0. satıra BILGISAYAR yaz
 lcd.setCursor(0,1);//0. sütun 1. satıra konumlan
 lcd.print("BILIMI");// 0.sütun 1. satıra BILIMI yaz
 delay(2000);//2 saniye bekle ekrandaki yazılar 2 saniye görünür
 lcd.clear();//ekrandaki tüm yazılar silinir
 lcd.setCursor(0,0);
 lcd.print("FASKERHAT");
 delay(2000);
 lcd.clear();
 //önce ekranda BILGISAYAR BILIMI yazar ve 2 sn bekler sonra ekrandakiler silinir
 //sonra ekranda FASKERHAT yazar ve 2 sn bekler sonra ekrandakiler silinir
 //bu döngü loop sayesinde döner
 //kayan yazı ya da değişen yazılar ise daha önce öğrendiğimiz döngü yapıları ile yapılabilir
}


Yukarıdaki kodlarda LCD ekran lcd olarak tanıtıldıktan sonra tüm kodlar lcd olarak başlıyor. yani lcd ismi artık bir nesne oluyor ve lcd ismi üzerinde komutlar çalıştırılıyor. Komutların açıklamaları // işaretlerinden sonra açıklanmıştır.

Hiç yorum yok:

Yorum Gönder