LiquidCrystal kütüphanesinin kullanabileceğimiz 19 farklı fonksiyonu vardır. Bu fonksiyonların yazının konumunu değiştirme, ekran boyunca yazıyı kaydırma veya görüntüyü açıp kapatmak gibi işlevleri vardır. Şimdi bu fonksiyonları kısaca inceleyelim:
LiquidCrystal ( )
İşlevi Arduino’nun LCD’ye bağlanmak için kullandığı pinleri ayarlar. LCD’yi kontrol etmek için Arduino’nun dijital pinlerinden herhangi birini kullanabilirsiniz. Arduino pin numaralarını bu sırayla parantez içine koyunuz: LiquidCrystal (RS, E, D4, D5, D6, D7). RS, E, D4, D5, D6, D7 LCD pinleridir.
Örneğin, LCD pini D7’nin Arduino pin 12’ye bağlanmasını istediğinizi varsayalım. D7’nin yerine şu şekilde “12” koyunuz: LiquidCrystal (RS, E, D4, D5, D6, 12). Bu işlev, programın void setup () bölümünün önüne yerleştirilmelidir.
lcd.begin ( )
Bu işlev LCD’nin boyutlarını ayarlar. Programın void setup () bölümünde herhangi bir LiquidCrystal işlevinin önüne yerleştirilmelidir. Satır ve sütunların sayısı lcd.begin (sütunlar, satırlar) olarak belirtilir. 16×2 LCD için, lcd.begin (16, 2) kullanmanız gerekiyor ve 20×4 LCD için lcd.begin (20, 4) kullanmanız gerekiyor.
lcd.clear ( )
Bu işlev, LCD’de halihazırda görüntülenen herhangi bir metni veya veriyi siler. lcd.print ( ) ile lcd.clear ( ) öğesini ve void loop ( ) bölümünde delay ( ) işlevini kullanırsanız, basit bir yanıp sönen metin programı oluşturabilirsiniz:
Bu işlev, imleci ekranın sol üst köşesine yerleştirir ve sonraki metni bu konuma yazdırır. Örneğin, aşağıdaki kod “hello, world!” metninin ilk üç harfini X ile değiştirir:
lcd.setCursor ( )
Benzer, ancak lcd.home ( ) ‘dan daha kullanışlıdır. Bu işlev, imleci (ve herhangi bir yazılı metni) ekranın herhangi bir yerine yerleştirir. Programınızın void setup ( ) veya void loop ( ) bölümünde kullanılabilir.
İmleç konumu, lcd.setCursor (sütun, satır) ile tanımlanır. Sütun ve satır koordinatları sıfırdan başlar (sırasıyla 0-15 ve 0-1). Örneğin, yukarıdaki “hello, world!” programının void setup ( ) bölümünde lcd.setCursor (2, 1) kullanılarak, “hello, world!” alt satıra yazdırılır ve sağa iki alan kaydırılır.
LCD’ye farklı tipte veri yazmak için bu işlevi kullanabilirsiniz, örneğin bir sıcaklık sensöründen okuma veya bir GPS modülünden gelen koordinatlar. Kendiniz oluşturduğunuz özel karakterleri yazdırmak için de kullanabilirsiniz. Programınızın void setup ( ) veya void loop ( ) bölümünde lcd.write ( ) öğesini kullanabilirsiniz.
lcd.print ( )
Bu işlev, LCD’ye metin yazdırmak için kullanılır. Programın void setup () bölümünde veya void loop () bölümünde kullanılabilir.
Harfleri ve sözcükleri yazdırmak için, metnin etrafına tırnak işaretleri (” “) yerleştirin. Örneğin; hello, world!’ü yazdırmak için yukarıda lcd.print (“hello,world!”) kullanmıştık.
Sayıları yazdırmak için tırnak işaretleri gerekmez. Örneğin; 123456789’u yazdırmak için lcd.print (123456789) yazabilirsiniz.
lcd.Cursor( )
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.noCursor ( ) işlevi imleci kapatır. lcd.cursor ( ) ve lcd.noCursor ( ) birçok metin giriş alanında gördüğünüze benzer yanıp sönen imleci yazdırmak için void loop ( ) bölümünde birlikte kullanılabilir.
lcd.blink ( )
Bu işlev, döngü başına yaklaşık 500 milisaniyede bir yanıp sönen blok stili bir imleç oluşturur. Bunu void loop ( ) bölümünde kullanın. lcd.noBlink ( ) işlevi yanıp sönen blok imlecini devre dışı bırakır.
lcd.display ( )
Bu işlev, LCD ekrana yazdırılmış herhangi bir metin veya imleci açar. lcd.noDisplay ( ) işlevi, LCD’nin belleğinden silmeden LCD’ye yazdırılan herhangi bir metni veya imleci kapatır.
lcd.scrollDisplayLeft ( )
Bu işlev, LCD’ye yazdırılan her şeyi alır ve sola taşır. Bunu takiben bir gecikme komutu ile void loop ( ) bölümünde kullanılmalıdır. İşlev, ilk karaktere geri dönmeden önce metni 40 alan sola taşır. Bu kod, “hello, world!” metnini, karakter başına bir saniyede olmak üzere sola taşır:
lcd.scrollDisplayRight( )
Bu işlev, lcd.scrollDisplayLeft ( ) gibi davranır ancak metni sağa taşır.
lcd.autoscroll( )
Bu işlev bir metin dizisi alır ve dizinin karakter sayısının artışlarıyla sağdan sola kaydırır. Örneğin; 3 karakter uzunluğunda bir metin diziniz varsa, her adımda metni 3 alan sola kaydırır:
lcd.noAutoscroll( )
lcd.noAutoscroll ( ), lcd.autoscroll ( ) işlevini kapatır. Kayan metin veya animasyon dizileri oluşturmak için void loop ( ) bölümünde lcd.autoscroll ( ) işlevinden önce veya sonra bu işlevi kullanabilirsiniz.
lcd.rightToLeft()
Bu işlev, metnin ekrana yazdırıldığı yönü ayarlar. Varsayılan mod, lcd.leftToRight ( ) komutunu kullanarak soldan sağa doğrudur, ancak metnin ters yönde yazılışının yararlı olduğu bazı durumlar bulabilirsiniz:
lcd.createChar ( )
Bu komut kendi özel karakterlerinizi oluşturmanıza izin verir. 16×2 LCD’nin her bir karakterinin 5 piksel genişliği ve 8 piksel yüksekliği vardır. Tek bir programda 8 farklı özel karakter tanımlanabilir. Kendi karakterlerinizi tasarlamak için, özel karakterinizin ikili karakter matrisini LCD karakter jeneratöründen yapmanız veya kendiniz haritalamanız gerekir. Aşağıdaki kod bir derece sembolü (°) oluşturur:
LCD Görüntüleme Seçenekleri
LiquidCrystal kütüphanesinin kullanabileceğimiz 19 farklı fonksiyonu vardır. Bu fonksiyonların yazının konumunu değiştirme, ekran boyunca yazıyı kaydırma veya görüntüyü açıp kapatmak gibi işlevleri vardır. Şimdi bu fonksiyonları kısaca inceleyelim:
LiquidCrystal ( )
İşlevi Arduino’nun LCD’ye bağlanmak için kullandığı pinleri ayarlar. LCD’yi kontrol etmek için Arduino’nun dijital pinlerinden herhangi birini kullanabilirsiniz. Arduino pin numaralarını bu sırayla parantez içine koyunuz: LiquidCrystal (RS, E, D4, D5, D6, D7). RS, E, D4, D5, D6, D7 LCD pinleridir.
Örneğin, LCD pini D7’nin Arduino pin 12’ye bağlanmasını istediğinizi varsayalım. D7’nin yerine şu şekilde “12” koyunuz: LiquidCrystal (RS, E, D4, D5, D6, 12). Bu işlev, programın void setup () bölümünün önüne yerleştirilmelidir.
lcd.begin ( )
Bu işlev LCD’nin boyutlarını ayarlar. Programın void setup () bölümünde herhangi bir LiquidCrystal işlevinin önüne yerleştirilmelidir. Satır ve sütunların sayısı lcd.begin (sütunlar, satırlar) olarak belirtilir. 16×2 LCD için, lcd.begin (16, 2) kullanmanız gerekiyor ve 20×4 LCD için lcd.begin (20, 4) kullanmanız gerekiyor.
lcd.clear ( )
Bu işlev, LCD’de halihazırda görüntülenen herhangi bir metni veya veriyi siler. lcd.print ( ) ile lcd.clear ( ) öğesini ve void loop ( ) bölümünde delay ( ) işlevini kullanırsanız, basit bir yanıp sönen metin programı oluşturabilirsiniz:
lcd.home ( )
Bu işlev, imleci ekranın sol üst köşesine yerleştirir ve sonraki metni bu konuma yazdırır. Örneğin, aşağıdaki kod “hello, world!” metninin ilk üç harfini X ile değiştirir:
lcd.setCursor ( )
Benzer, ancak lcd.home ( ) ‘dan daha kullanışlıdır. Bu işlev, imleci (ve herhangi bir yazılı metni) ekranın herhangi bir yerine yerleştirir. Programınızın void setup ( ) veya void loop ( ) bölümünde kullanılabilir.
İmleç konumu, lcd.setCursor (sütun, satır) ile tanımlanır. Sütun ve satır koordinatları sıfırdan başlar (sırasıyla 0-15 ve 0-1). Örneğin, yukarıdaki “hello, world!” programının void setup ( ) bölümünde lcd.setCursor (2, 1) kullanılarak, “hello, world!” alt satıra yazdırılır ve sağa iki alan kaydırılır.
lcd.write ( )
LCD’ye farklı tipte veri yazmak için bu işlevi kullanabilirsiniz, örneğin bir sıcaklık sensöründen okuma veya bir GPS modülünden gelen koordinatlar. Kendiniz oluşturduğunuz özel karakterleri yazdırmak için de kullanabilirsiniz. Programınızın void setup ( ) veya void loop ( ) bölümünde lcd.write ( ) öğesini kullanabilirsiniz.
lcd.print ( )
Bu işlev, LCD’ye metin yazdırmak için kullanılır. Programın void setup () bölümünde veya void loop () bölümünde kullanılabilir.
Harfleri ve sözcükleri yazdırmak için, metnin etrafına tırnak işaretleri (” “) yerleştirin. Örneğin; hello, world!’ü yazdırmak için yukarıda lcd.print (“hello,world!”) kullanmıştık.
Sayıları yazdırmak için tırnak işaretleri gerekmez. Örneğin; 123456789’u yazdırmak için lcd.print (123456789) yazabilirsiniz.
lcd.Cursor( )
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.noCursor ( ) işlevi imleci kapatır. lcd.cursor ( ) ve lcd.noCursor ( ) birçok metin giriş alanında gördüğünüze benzer yanıp sönen imleci yazdırmak için void loop ( ) bölümünde birlikte kullanılabilir.
lcd.blink ( )
Bu işlev, döngü başına yaklaşık 500 milisaniyede bir yanıp sönen blok stili bir imleç oluşturur. Bunu void loop ( ) bölümünde kullanın. lcd.noBlink ( ) işlevi yanıp sönen blok imlecini devre dışı bırakır.
lcd.display ( )
Bu işlev, LCD ekrana yazdırılmış herhangi bir metin veya imleci açar. lcd.noDisplay ( ) işlevi, LCD’nin belleğinden silmeden LCD’ye yazdırılan herhangi bir metni veya imleci kapatır.
lcd.scrollDisplayLeft ( )
Bu işlev, LCD’ye yazdırılan her şeyi alır ve sola taşır. Bunu takiben bir gecikme komutu ile void loop ( ) bölümünde kullanılmalıdır. İşlev, ilk karaktere geri dönmeden önce metni 40 alan sola taşır. Bu kod, “hello, world!” metnini, karakter başına bir saniyede olmak üzere sola taşır:
lcd.scrollDisplayRight( )
Bu işlev, lcd.scrollDisplayLeft ( ) gibi davranır ancak metni sağa taşır.
lcd.autoscroll( )
Bu işlev bir metin dizisi alır ve dizinin karakter sayısının artışlarıyla sağdan sola kaydırır. Örneğin; 3 karakter uzunluğunda bir metin diziniz varsa, her adımda metni 3 alan sola kaydırır:
lcd.noAutoscroll( )
lcd.noAutoscroll ( ), lcd.autoscroll ( ) işlevini kapatır. Kayan metin veya animasyon dizileri oluşturmak için void loop ( ) bölümünde lcd.autoscroll ( ) işlevinden önce veya sonra bu işlevi kullanabilirsiniz.
lcd.rightToLeft()
Bu işlev, metnin ekrana yazdırıldığı yönü ayarlar. Varsayılan mod, lcd.leftToRight ( ) komutunu kullanarak soldan sağa doğrudur, ancak metnin ters yönde yazılışının yararlı olduğu bazı durumlar bulabilirsiniz:
lcd.createChar ( )
Bu komut kendi özel karakterlerinizi oluşturmanıza izin verir. 16×2 LCD’nin her bir karakterinin 5 piksel genişliği ve 8 piksel yüksekliği vardır. Tek bir programda 8 farklı özel karakter tanımlanabilir. Kendi karakterlerinizi tasarlamak için, özel karakterinizin ikili karakter matrisini LCD karakter jeneratöründen yapmanız veya kendiniz haritalamanız gerekir. Aşağıdaki kod bir derece sembolü (°) oluşturur:
#include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); byte customChar[8] = { 0b00110, 0b01001, 0b01001, 0b00110, 0b00000, 0b00000, 0b00000, 0b00000 }; void setup() { lcd.createChar(0, customChar); lcd.begin(16, 2); lcd.write((uint8_t)0); } void loop() { }