Arduino UNO & 16×2 LCD


Beğendiyseniz lütfen arkadaşlarınızla sosyal medyada paylaşın:

Bu yazı http://www.arduinoturkiye.com/ sitesinden izinle alınmıştır.

 

Arduino gibi bir sistemle çalışırken, sistemin ne yaptığından haberdar olmak gerektiğinde bunu  led, buzzer, 7 Segment Display gibi sınırlı durumları bildiren elemanlar yeterli gelmediğinde bir çok bilgiyi almanın  en kolay yollarından birisi LCD ekran kullanmak.
Piyasada bir çok çeşit karakter LCD ekran bulmak mümkün. Tabi bulduğumuz her LCD arduino örnekleri ile aynı özelliklerde olmayabiliyor.

Arduino ile çalışırken en çok dikkat ettiğim konu örneklerle uyumlu ek parçalar temin edebilmek, böylece elemanı çözümlemek için zaman kaybetmemek ama herzaman bu olmayabiliyor. Biraz araştırınca arduino örneklerinde gösterilen 16×2 HD44780 LCD Ekranı bulmak pek mümkün olmadı. Öyle ya da böyle bir yolunu bulurum diyerek piyasadaki standart bir 16×2 LCD ekranı aldım ve ilk iş olarak LCD ekranın Data Sheet’ini aramaya koyuldum. Bulabildiğim sadece bir sayfadan oluşan bağlantı bilgilerini gösteren sayfaydı. İşin ehli tecrübeli kişilen için yeterli olan bu sayfa benim gibi acemiler için oldukça zorlu geçecek bir devrenin göstergesiydi. Örnekleri breadboard üzerinde oluşturduğumdan öncelikle LCD’nin breadboard’a düzgün şekilde oturtulması gerekiyordu. Bir kaç uğraşma sonunda bu işin lehim kullanmadan olmayacağını anlayıp çok uzun zamandır kullanmadığım havyamı ve lehim telimi bulup erkek header’ı LCD’ye lehimledim.

16x2 LCD'ye Erkek Header'ı Lehimliyoruz.

Ardından örnekteki LCD devresini kuruyoruz.

Arduino UNO ile 16x2 LCD Bağlantısı

Burada dikkat edeceğimiz nokta LCD’nin pinlerinin sıralı olmaması. benim gibi sıralı olmayan şeyleri karıştırıyorsanız ekteki fotoğrafa bakarak sorunsuz şekilde bağlantıyı gerçekleştirebilirsiniz.

16x2 LCD'nin Arka Tarafı

Yazılım yüklendiğinde LCD’de görmeyi beklediğim karakterler yerine okunamayan abuk subuk değerlerin olduğunu görünce uzak doğu ürünlerinin dışında ürün bulmanın nerdeyse imkansız olduğu bir ülkede arduino gibi tüm örnekleri amerika, avrupa piyasası ürünlerinden oluşan sistemle uğraşmanın zorluklarını düşünmeye dalıyordum ki bir örnekte farklı LCD kullanımında yapılması gereken değişiklikleri gösteren notu buldum :)

Kısmını

şeklinde değiştiriyoruz.

Arduino UNO - 16x2 LCD Yazılımı:
// Arduino Turkiye 16x2 LCD ornegi
#include <LiquidCrystal.h>

// Orjinal LCD Ornegindeki kısım bu sekilde degistirilmeli:
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup(){
  lcd.begin(16,2);
}

void loop(){
  lcd.clear(); 
  lcd.setCursor(6,0);
  lcd.print("cCc"); 
  lcd.setCursor(0,1);
  lcd.print("Arduino Turkiye");
  delay(15000);
}

Hemen taslakta bulunan pin değerlerini değiştirip yeniden uno’ya yükledim. Ve karşımızda ilk yazımız:

Arduino Uno ile 16x2 LCD

Kullandığımız potansiyometre ile yazının kontrastını ayarlayabiliyoruz. Arduino üzerindeki sensörlerden, yaptığımız işlemlerden her türlü çıktıyı 16×2 ekran üzerinde görüntülememiz mümkün. Karakter ekranın kullanımı oldukça basit. lcd.clear();  komutu ile ekranı temizliyoruz. lcd.setCursor(6,0); komutu ile imleci istediğimiz karakter kutusuna konumlandırıyoruz. Burada (6,0) değeri ilk satırın 6 karakter kutusuna konumlanıldığını gösteriyor. lcd.print(“cCc”);  komutu ile imlecin konumlandığı yerden yazmaya başlıyoruz. her karakter bir karakter kutusu kullanıyor. lcd.setCursor(0,1); ile ikinci satırın ilk karakter kutusuna konumlanıyoruz. lcd.print(“Arduino Turkiye”); komutu ile ekranda Arduino Turkiye yazısını görüntülüyoruz. Standart LCD kütüphanesi Türkçe karakterleri desteklemiyor :) Tabi bu Türkçe karakterleri yazamayacağımız anlamına gelmiyor. Her karakter kutusunu byte değer dizisi ile istediğimiz gibi kullanabiliyoruz. bunun için biraz kod yazmamız gerekiyor ama LCD kullanımının güzellikleri için buna değiyor.

ü harfi yazmak için örnek:
byte newChar[8] = {
    B01010,
    B00000,
    B10001,
    B10001,
    B10001,
    B10011,
    B01101,
    B00000
};

kod içerisinde her hangi bir değeri LCD’de görüntülemek istediğimizde yapmamız gereken sadece imleci konumlandırmak ve değeri lcd.print ile değerimizi LCD’ye göndermek.

 

 

arduino coşkun taşdemir pdf, arduino gittigidiyor, arduino kurulum, arduino programlama, arduino timer interrupt, arduino xorarduino, arduino nedir, arduino türkiye, arduino uno, arduino projeleri, arduino programlama, arduino kitap, arduino mega, arduino fiyat, arduino nedir, arduino türkiye, arduino uno, arduino projeleri, arduino programlama, arduino projects, arduino kitap, arduino mega, arduino fiyat, arduino android, arduino array, arduino analog read, arduino adk, arduino android control, arduino analogwrite, arduino ankara, arduino analog input, arduino al, arduino başlangıç seti, arduino bluetooth, arduino bluetooth shield, arduino buzzer, arduino başlangıç, arduino bluetooth module, arduino bootloader, arduino board, arduino button
arduino gittigidiyor, arduino kurulum, arduino programlama, arduino timer interrupt, arduino xorarduino
arduino kurulum, arduino programlama, arduino timer interrupt, arduino xorarduino, arduino nedir
 

 



Yorumlar: 0
Yorum yaz
Bu blog ile ilgili ürünler:
16x2 LCD Ekran Mavi 1602
16x2 LCD Ekran Mavi 1602
HIZLI MENÜ

Side FP

Web Analytics