26 Aralık 2016 Pazartesi

Arduinoda LCD Ekran



Lcd ekran dediğimiz şey her bir karakteri 5x7 lik karakter gösterimlerinden oluşan belli satır ve sütun sayılarından oluşan ekran türü. En klasik olarak kullanılan 16x2 dir.Yani 16 satır 2 sütundan oluşur. Bunların 16x4 gibi farklı versiyonları mevcuttur. Biz 16x2 lik LCD ekran üzerinden gideceğiz. Ama diğerlerinide arduio ile gösterdiğimiz yolla rahatlıkla programlayabilirsiniz. Genelde 16 tane pini vardır. Modele göre farklılık gösterebilir.+,- besleme pini kontrast ayarı olan VEE yada V0 olarak isimlendirilen pin.Bu pine potansiyometrenin ayar bacağını bağlamanız gerekir.R/W,Enable,RS pinleri.8 adet data pini ve arka ışıklandırma için kullanılan ledlerin +,- beleme pinleri. Arduinoda LCD ekran programı için arduinonun en avantajlı yönlerinden biri olan kütüphane kullanıyoruz.O kütüphane LiquidCrystal kütüphanesi. Bu kütüphaneyi kullanmayı bildiğiniz taktirde ve doğru bağlantıları yaparsanız kolaylıkla LCD ekranı kontrol edersiniz. Şimdi bu kütüphanenin komutlarını nasıl kullanacağımızdan bahsedelim.

#include <LiquidCrystal.h> öncelikle kütüphaneyi programa ekleyerek başlamalıyız.

LiquidCrystal(rs, enable, d4, d5, d6, d7);
LiquidCrystal(rs, rw, enable, d4, d5, d6, d7);
LiquidCrystal(rs, enable, d0, d1, d2, d3, d4, d5, d6, d7);
LiquidCrystal(rs, rw, enable, d0, d1, d2, d3, d4, d5, d6, d7);

LiquidCrystal(); Bu kütüphanenin bacak bağlantı şeması gösterimi gibidir yukarıda verilenlerin herhangibirini kullanlirsiniz.Fakat temel olarak ne kadar az bacak kullanırsanız o kadar size diğer bacakları kullanma imkanı kalır. Data bacaklarına arduinodan bağlantı yapmayacaksanız boş kalabilir rw ise muhakkak toprağa verilmelidir. Bu durumda ilk yazan komutu kullanabilirsiniz. Bana pin lazım değil ben en sonundakini kullanmak istiyorum derseniz size kalmış bir durum.

lcd.begin(sütun,satır);  LCD ekranın kaç tarı ve sütundan oluştuğunu buran belirtiniz.

lcd.print(); LCD ekrana text halinde gönderilecekse tırnak içinde değilse değişken ismini yazarak lcd ekrana bilgi yolladığımız komut.Ayrıca değişken yazdırılacaksa ve sayı tabanı belirlenmek isteniyorsa binariy için BIN, ondalık için DEC , sekizlik için OCT, onaltılık için HEX ifadeleri virgülle belirtilit ayen şöyle : lcd.print(degisken,HEX);

lcd.setCursor(sütun,satır); Cursorun hangi satır ve sütunda olacağını belirler.
lcd.clear(); ekranda temizler

Şimdi örnek bir program yazalım.

#include <LiquidCrystal.h>
// LiquidCrystal(rs, enable, d4, d5, d6, d7) ilk komutu kullanarak pin bağlantılarını belirliyoruz.
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
/*
Devre şeması;
 - LCD'nin RS pini -> Arduino'nun 12. pini
 - LCD'nin Enable (E) pini -> Arduino'nun 11. pini
 - LCD'nin D4 pini -> Arduino'nun 5. pini
 - LCD'nin D5 pini -> Arduino'nun 4. pini
 - LCD'nin D6 pini -> Arduino'nun 3. pini
 - LCD'nin D7 pini -> Arduino'nun 2. pini

 - LCD'nin R/W pini -> toprağa
 - LCD'nin R0 pini -> potansiyometre çıkışına
 - LCD VDD -> Arduino 5 Voltuna
 - LCD VSS -> toprağa
*/
void setup() {
  lcd.begin(16, 2); /* Kullandigimiz LCDnin sütun ve satir sayısını belirtmeliyiz */
}
void loop() {
  lcd.setCursor(0, 0); /* İmlecin yeri 0. satir 0. sütun olarak ayarlandı */
  lcd.print("OtomasyonBil"); /* Ekrana yazı yazalım */

}

Devre Şeması:

Disqus Yorumları Yükle

0 yorum