Cuma , 26 Nisan 2024

Arduino İle LCD Ekran 2×16 Kullanımı


Arduino İle 2×16 LCD Ekran Kullanımı Kodları ve Devresi

Değerli arkadaşlar bu çalışmamızda 2×16 LCD ekranımızı nasıl kullanacağımızı sizlere aktaracağım. Aşağıda LCD panelin şeklini ve görmektesiniz.

Bacaklar ve Bacakların Görevleri

  • GND-Bu bacağı direk toprak hattına bağlıyoruz. (Bazı LCD lerden VSS ismini alabilir)
  • VCC -Bu bacağı +5V bağlıyoruz. Bu bacağa VDD ismide verilmektedir.
  • V0-Bu bacağı maksimum kontrast için Direk GND hattına ayarlanabilir kontrast için 10K lık bir Potansiyometreye bağlanmalıdır.
  • RS : Lcd ye komut mu yoksa data mı gönderileceğini belirler. RS girişi “0” (ground) durumundayken komut saklayıcısı, +5V oldugundaysa veri saklayıcısı seçilmiş olur.
  • RW : Lcd den okuma mı yoksa lcd ye yazma yapılacağını belirler. RW girişi GND ye bağlandığında yani “0” durumundayken LCD yazma modundadır. +5v bağlı ise okuma durumuna geçer.
  • E : Enable ucu LCD ve pinler arasındaki gerçek veri alışverişini sağlayan bacaktır.
  • D0 – D7 : Data pinleridirler. Bu pinler doğrudan arduino ya bağlıdırlar. Veri 4 ya da 8 bitlik veri yolu ile gönderilebilir. Küçük projelerde genellikle D4-D7 arasındaki pinler kullanılırlar.

LCD Ekran Karakter Konum Bilgisi

Bir harfin konumu ya da imlecin taşınması isteği bir konumu belirtirken önce sütun sonra satır bilgisi verilir.

LCD Ekran Kullanımı İçin Gerekli Komutlar ve Anlamları

1-LCD ekran için gerekli kütüphane dosasının yüklenmesi
#include <LiquidCrystal.h>

2-LCD de kullandığımız bacakların(pinlerin) Arduinoya bildirilmesi.
Burada kullandığımız pinleri aşağıdaki açıklama satırında belirtildiği şekli ile numaralandırılmalıdır.

//LiquidCrystal lcd(rs,e,d4,d5,d6,d7);
LiquidCrystal lcd(8,7,6,5,4,3);

3-LCD boyutunun arduino ya bildirilmesi

lcd.begin (16, 2);

4-LCD ekrandaki yazıların silinmesi için aşağıdaki komut kullanılır.

lcd.clear ( );

5-İmleci ekranın sol üst köşesi taşımak için aşağıdaki komut kullanılır. Bu sayesinde imlece 0. sutun 0. Satır yani (0,0) konumuna gider.

lcd.home ( );

6-İmleci istenilen konuma taşımak ve yazmaya oradan devam etmek için aşağıdaki komut kullanılır.
lcd.setCursor(2, 1);

7-Lcd ekrana yazı yazdırmak için aşağıdaki komut kullanılır.
lcd.print(“MEHMET GUCYENER”);

Harfleri ve sözcükleri yazdırmak için, metnin etrafına tırnak işaretleri (” “) yerleştirin. Örneğin; Mehmet GUCYENER ’İ yazdırmak için yukarıdaki gibi kullanılır.

Sayıları yada değişkenleri yazdırmak için tırnak işaretleri gerekmez. Örneğin; 123456789’u yazdırmak için lcd.print (123456789) yazabilirsiniz.

8-LCD ekranında imlecin görünmesini istiyor iseniz aşağıdaki komut kullanılır.
Bu işlev görünür bir imleç oluşturur. İmleç, LCD’ye yazdırılacak bir sonraki karakterin altına yerleştirilmiş yatay bir çizgidir.

lcd.cursor ( );

9-LCD ekranında imlecin görünmesini istemiyor iseniz aşağıdaki komut kullanılır.

lcd.noCursor ( );

10-Gerektiğinde ekranda bir dikdörtgen şeklinde yanıp senen bir şekil oluşturmak istenir ise aşağıdaki komut kullanılır.

lcd.blink();

11-Ekrandaki yazının ya da görüntünün açılıp kapanmasını sağlamak isterseniz aşağıdaki iki komutu kullabilirsiniz.

lcd.display(); Görüntülenme sağlar.

lcd.noDisplay(); Görüntülenmemeyi sağlar.

12- Yazılanları Sola doğru taşımak için aşağıdaki komutu kullanabilirsiniz.

lcd.scrollDisplayLeft ( );

13- Yazılanları sağa doğru taşımak için aşağıdaki komutu kullanabilirsiniz.

lcd.scrollDisplayRight ( );

14-Yazılan metni dizi halinde sola doğru kaydırmak başka bir değişle kayan yazı yapmak için aşağıdaki komut kullanılır.

lcd.autoscroll( );

Arduino İle LCD Kullanımı Basit Örnek

Devre Senaryosu

Aşağıdaki devrede 1-100 arasında iki farklı sayı üretilip bu sayılar ve bu sayıların toplamlarının sonucu LCD ekranda gösterilmektedir.

Tinkercad Devre Şeması

Devre Kodları

#include<LiquidCrystal.h>
//LiquidCrystal lcd(rs,e,d4,d5,d6,d7);
LiquidCrystal lcd(8,7,6,5,4,3);
void setup()
{

lcd.begin(16,2);

}

void loop()
{

int a=random(1,100);
int b=random(1,100);
int sonuc=a+b;

lcd.print(a);
lcd.print(” + “);
lcd.print(b);
lcd.print(” = “);

lcd.print(sonuc,DEC);

delay(2000);

lcd.clear();
}

Bu Konuda İlginizi Çekebilir

Sosyal Medya Dersi Çalışma Soruları

Sosyal Medya Dersi Sınavı Çalışma Soruları SOSYAL MEDYA DERSİ 2. DÖNEM 1. YAZILI SINAVI ÇALIŞMA …