12C ve 16*2 LCD ekran Kullanımı
GEREKLİ OLAN DEVRE
1 Adet Arduino
1 Adet 12C 2*16 LCD EKRAN
Kablolar |
 |
 |
 |
 |
 |
Arduino LCD Komutları
LiquidCrystal ( ) 12 c Modülü Kullandıgımız zaman kullanmıyoruz.
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.x programın void setup () bölümünün önüne yerleştirilmelidir.
lcd.begin ( )
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 ( )
LCD’de halihazırda görüntülenen herhangi bir metni veya veriyi siler.
lcd.home ( )
imleci ekranın sol üst köşesine yerleştirir ve sonraki metni bu konuma yazdırır.
lcd.setCursor ( )
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, “merhaba” 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 ( )
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. Sayıları yazdırmak için tırnak işaretleri gerekmez.
lcd.Cursor( )
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.blink ( )
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 ( )
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.
Bu iki işlev, yanıp sönen bir metin efekti oluşturmak için void loop ( ) bölümünde birlikte kullanılabilir. Bu kod “hello, world!” metnini açıp kapatacak:
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( )
lcd.scrollDisplayLeft ( ) gibi davranır ancak metni sağa taşır.
lcd.autoscroll( )
bir metin dizisi alır ve dizinin karakter sayısının artışlarıyla sağdan 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()
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. |
//12C EKRAN TÜRÜ SERİAL BULMA KODU
#include <Wire.h>
void setup()
{
Serial.begin (9600);
Serial.println ("I2C Ekran türü taranıyor...");
Wire.begin();
for (byte e = 8; e < 150; e++)
{
Wire.beginTransmission (e);
if (Wire.endTransmission () == 0)
{
Serial.print ("İletişim yolu bulundu, Ekran Türü : ");
Serial.print (e, DEC);
Serial.print (" (0x");
Serial.print (e, HEX);
Serial.println (")");
}
}
Serial.println ("Tamamlandı. ");
void loop() {} |
LCD EKRANA YAZI YAZMA ÖRNEĞİ KODU 1 ::
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Fatih MTAL");
lcd.setCursor(0,1);
lcd.print("Fizik Ogretmeni");
}
void loop()
{
delay (5000);
lcd.clear ();
lcd.setCursor(1,0);
lcd.print("Huseyin Kececi");
lcd.setCursor(0,1);
lcd.print("Robotik Kodlama");
delay (5000);
lcd.clear ();
lcd.setCursor(1,0);
lcd.print("Abone Olmayi");
lcd.setCursor(3,1);
lcd.print("Unutmayiniz");
} |
// Hüseyin Keçeci İle Robotik Kodlama LCD EKRANA YAZI YAZMA 1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
byte derece[8] = {
0b00110,
0b01001,
0b01001,
0b00110,
0b00000,
0b00000,
0b00000,
0b00000
};
void setup()
{
lcd.init();
lcd.backlight();
lcd.createChar(0, derece);
lcd.setCursor(10, 0);
lcd.write((uint8_t)0);
}
void loop() {
} |
// Hüseyin Keçeci İle Robotik Kodlama LCD EKRANA YAZI YAZMA 2
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
byte smiley[8] = {
B00000,
B10001,
B00000,
B00000,
B10001,
B01110,
B00000,
};
void setup() {
lcd.init();
lcd.backlight();
lcd.createChar(0, smiley);
lcd.begin(16, 2);
lcd.write(byte(0));
}
void loop() {} |
LCD EKRANA YAZI YAZMA ÖRNEĞİ KODU :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 *2
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Fatih MTAL");
lcd.setCursor(0,1);
lcd.print("Fizik Ogretmeni");
}
void loop()
{
delay (5000);
lcd.clear ();
lcd.setCursor(1,0);
lcd.print("Huseyin Kececi");
lcd.setCursor(0,1);
lcd.print("Robotik Kodlama");
delay (5000);
lcd.clear ();
lcd.setCursor(1,0);
lcd.print("Abone Olmayi");
lcd.setCursor(3,1);
lcd.print("Unutmayiniz");
}
|
LCD Ekranda Tek Satır Kayan Yazı Yazma Kodu :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
String yazi;
int karakter;
int i;
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Huseyin Kececi");
lcd.setCursor(0,1);
lcd.print("Robotik Kodlama");
delay (3000);
}
void loop()
{
lcd. clear ();
yazi = "Huseyin Kececi ile Robotik Kodlama";
lcd.setCursor(0,0);
Serial.println(yazi);
lcd.print (yazi);
delay(500);
karakter=yazi.length();
if (karakter>16){
for (i=0;i<karakter;i++){
lcd.scrollDisplayLeft();
delay(500);
}
for (i=0;i<karakter+16;i++){
lcd.scrollDisplayRight();
delay(500);
}
for (i=0;i<16;i++){
lcd.scrollDisplayLeft();
delay(500);
}
}
}
|
LCD Ekranda İki Satır Kayan Yazı Yazma Kodu :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line display
String yazi1;
String yazi2;
int karakter;
int i;
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Huseyin Kececi");
lcd.setCursor(0,1);
lcd.print("Robotik Kodlama");
delay (3000);
}
void loop()
{
lcd. clear ();
yazi1 = "Huseyin Kececi ile Robotik Kodlama";
yazi2 = " Kanalima Hos Geldiniz ";
lcd.setCursor(0,0);
lcd.print (yazi1);
lcd.setCursor(0,1);
lcd.print (yazi2);
delay(500);
karakter=yazi1.length();
if (karakter>16){
for (i=0;i<karakter;i++){
lcd.scrollDisplayLeft();
delay(500);
}
for (i=0;i<karakter+16;i++){
lcd.scrollDisplayRight();
delay(500);
}
for (i=0;i<16;i++){
lcd.scrollDisplayLeft();
delay(500);
}
}
} |
Serial porta Yazılan Yazıyı LCD Ekrana Kayan Yazı olarak Yazan Kod :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line display
String yazi;
int karakter;
int i;
void setup()
{
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Huseyin Kececi");
lcd.setCursor(0,1);
lcd.print("Robotik Kodlama");
delay (3000);
}
void loop()
{
lcd. clear ();
if(Serial.available()){
yazi = Serial.readString ();
}
lcd.setCursor(0,0);
Serial.println(yazi);
lcd.print (yazi);
delay(500);
karakter=yazi.length();
if (karakter>16){
for (i=0;i<karakter;i++){
lcd.scrollDisplayLeft();
delay(500);
}
for (i=0;i<karakter+16;i++){
lcd.scrollDisplayRight();
delay(500);
}
for (i=0;i<16;i++){
lcd.scrollDisplayLeft();
delay(500);
}
}
} |
LCD EKRANA KAYBOLAN YAZI YAZMA ÖRNEĞİ KODU 1 :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line display
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Fatih MTAL");
lcd.setCursor(0,1);
lcd.print("Fizik Ogretmeni");
delay (5000);
}
void loop()
{
lcd.clear ();
lcd.setCursor(1,0);
lcd.print("Abone Olmayi");
lcd.setCursor(3,1);
lcd.print("Unutmayiniz");
delay (4000);
lcd.clear ();
delay (1000);
} |
LCD EKRANA KAYBOLAN YAZI YAZMA ÖRNEĞİ KODU 2 :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line display
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(1,0);
lcd.print("Fatih MTAL");
lcd.setCursor(0,1);
lcd.print("Fizik Ogretmeni");
delay (5000);
}
void loop()
{
lcd.clear ();
lcd.setCursor(1,0);
lcd.print("Abone Olmayi");
delay (2000);
lcd.clear ();
lcd.setCursor(3,1);
lcd.print("Unutmayiniz");
delay (2000);
lcd.clear ();
} |
LCD EKRANDA SOLA KAYAN YAZI :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4); // set the LCD address to 0x27 for a 16 chars and 2 line display
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(16,1);
lcd.print("Robotik Kodlama");
}
void loop()
{
lcd.scrollDisplayLeft();
delay(500);
} |
|
|
KÜTÜPHANE İÇİN TIKLAYINIZ |

|
|