Kaydol
Giriş Yap
Parolanızı mı unuttunuz

Şifreni mi unuttun? Lütfen e-mail adresinizi giriniz. Bir bağlantı alacaksınız ve e-posta yoluyla yeni bir şifre oluşturacaksınız.

Üzgünüz, gönderi ekleme izniniz yok.

Arduino I2C Dönüştürücü İle 16×2 LCD Kullanımı

Arduino I2C Dönüştürücü İle 16×2 LCD Kullanımı

Merhaba arkadaşlar arduino ile çılgın projelerde olabildiğince hızlı ilerlemeye devam ediyoruz. Bu yazımızın konusu arduino I2C dönüştürücü ile 16×2 LCD nasıl bağlanır, nasıl ekrana yazı yazdırılır onu öğreneceğiz. 🙂  I2C dönüştürücü olmadan arduino ‘da LCD kullanımı gerçekten zorlu , çünkü LCD modülünü çalıştırabilmek için arduino dan tam 9 adet kablo bağlamanız gerekiyor.Buda hem bağlantılarda soruna yol açabileceği gibi hemde arduino da çok fazla pin kaplıyor. Bu sorunu I2C dönüştürücü kullanarak halledebilirsiniz.Bazı LCD modüllerin üzerinde geldiği gibi ayrı olarak da satılan I2C modülü ile bu sorunu ortadan kaldırabilirsiniz. Ayrıca bu dönüştürücü üzerinde birde potansiyemetre bulunmaktadır. Bu pot sayesinde modülün ekran parlaklığını ayarlaya biliyorsunuz.

yapay zeka destekli haber sitesi

Bu dönüştürücü ile LCD ekranınızı güç pinleri hariç 2 tane pin olan Scl ve Sda ile çalıştırabileceksiniz. 🙂

I2C deyip duruyoruz peki ya nedir bu I2C ?

Arduino, diğer Arduino veya sensörlerle haberleşmek için bazı haberleşme protokolleri kullanır. Bu protokollerden birisi de I2C’dir. I2C (Inter-Integrated Circuit), seri haberleşme türlerinden senkron haberleşmeye bir örnektir. Haberleşme için toprak hattı dışında SDA ve SCL olmak üzere iki hatta ihtiyaç duyulmaktadır. Hat sayısının fazla olması nedeniyle, uzun mesafeli haberleşmelerde tercih edilmez. Genellikle kısa mesafeli ve düşük veri aktarım hızının yeterli olduğu yerlerde kullanılır.

I2C haberleşmesinde, haberleşmeyi kontrol eden master cihazı (arduino) bulunur. Her haberleşmede bir tane master bulunmalıdır. Haberleşmenin sağlanabilmesi için haberleşme hattına en az bir adet slave (köle) cihaz bağlanmalıdır. Hatta bağlanan birden fazla slave cihazlardan hangisinin veri aktaracağına, master cihaz karar verir. Böylece hat sayısında bir değişiklik olmadan birden fazla cihazla haberleşme sağlanır.

Umarım anlaşılmıştır 🙂 Teorik bilgimizi tamamladığımıza göre isterseniz vakit kaybetmeden bu müthiş modülü nasıl kullanacağız bunu öğrenelim..

Tabi birkaç malzemeye ihtiyacımız var 🙂

Malzeme Listesi

1- Herhangi Bir Arduino Modeli (Ben Mega Kullanacağım)

2- I2C Dönüştürücü

3- 16×2 LCD Ekran

4- Breadboard ve Jumper Kablolar

Not: Tüm bu malzemeleri elektronik parça satan yerlerde bulabilirsiniz yada şu ve bu adreslerden internet üzerinden güvenle sipariş edebilirsiniz 🙂 Ayrıca eğer zamanım bol diyorsanız Çin’den de Aliexpress vasıtasıyla getirtebilirsiniz. Daha uygun fiyata gelecektir.

Arduino IC2 Dönüştürücü İle 16×2 LCD Devre Şeması

Not: Arduino ve I2C LCD Modülün Bağlantı Şeması , SDA = A4 ve SCL = A5‘ tir. Lakin Arduino Mega da ise I2C LCD Modülün Bağlantı Şeması SDA = 20, SCL = 21 dir.(Zaten mega kullananlar göreceklerdir ki 20. pinin yanında SDA, 21. pinin yanında SCL yazmaktadır.)

Alt tarafta çizdiğimiz devre şemasına bakarak uygun arduino modeline göre devremizi breadboard’umuza kuralım.

Arduino Uno İçin;

Arduino Mega İçin;

Not: Bağlantıları sizi aldatmasın kodda herhangi bir değişiklik olmuyor. 🙂

Yazılım

Bu modülle çalışabilmek için bir kütüphaneye ihtiyaç duyuyoruz öncelikle kütüphanemizi buradan indirip aşağıda belirtilen yoldaki klasöre rar dosyasından dan çıkarıp atın.

Rar Şifresi: donanimplus.com

Belgeler >  Arduino > libraries

Arduino IDE programımızda I2C LCD ekran için örnek bir kod bulunmakta. Bu kodu açmak için şu sırayı takip etmeniz gerekiyor..⇓

Dosya > Örnekler > LiquidCrystal_I2C > HelloWorld

Açtığımızda aşağıdaki gibi bir kodla karşılaşacağız 🙂

Koddaki hello, world! yazısını parantezin içindeki tırnakları silmeden değiştiriyoruz tıpkı aşağıdaki gibi..

Derlediğimiz kodu upload ediyoruz.. Ve Sonuç;

Kod

//DONANIM PLUS ELEKTRONİK
//TASARIM TOLGA SOYTEPE
//İNSTAGRAM Tolgasyp
//TWİTTER TSytpp
#include <LiquidCrystal_I2C.h> // lcdnin çalışabilmesi için kütüphaneyi ekliyoruz
#include <Wire.h>// aynı şekilde
LiquidCrystal_I2C lcd(0x27,16,2); // lcdnin 16×2 olduğunu belirtiyoruz..void setup()
{
lcd.begin();//lcd ye güç veriyoruz..
lcd.backlight();// arka ışığa güç veriyoruz..
lcd.print(“I2C LCD KONTROL”);// lcd ye yazmak istediğiniz metni yazıyoruz..
}
void loop ()
{}

Projede kullanılan yazılım kodlarını buradan indirebilirsiniz 🙂

Bu kodda ufak oynamalar yaparak istediğimiz grafikleri elde edebiliriz mesela ilk satırda “DONANIM” ikinci satırda “PLUS ELEKTRONİK” yazsın 2 saniye beklesin sonra silinsin ilk olarak birinci satıra  “TASARIM” yazsın 1 saniye beklesin sonra ikinci satıra “TOLGA SYTP” yazsın 2 saniye beklesin ve sonra silinip başa dönsün.

Not: Eğer birinci ve ikinci satıra nasıl yazılacağını bilmiyorsanız şu postta anlatmıştık.

Haydi deneyelim 🙂

Kod

//DONANIM PLUS ELEKTRONİK
//TASARIM TOLGA SOYTEPE
//İNSTAGRAM Tolgasyp
//TWİTTER TSytpp
#include <LiquidCrystal_I2C.h> // lcdnin çalışabilmesi için kütüphaneyi ekliyoruz
#include <Wire.h>// aynı şekilde
LiquidCrystal_I2C lcd(0x27,16,2); // lcdnin 16×2 olduğunu belirtiyoruz..void setup()
{
lcd.begin();//lcd ye güç veriyoruz..
lcd.backlight();// arka ışığa güç veriyoruz..}
void loop ()
{
lcd.clear(); // açılışta lcd de bir yazı varsa diye lcdyi temizliyoruz..
delay(100);// 100 ms bekleyip
lcd.setCursor(0,0); // birinci satıra..
lcd.print(“DONANIM”);//yazmak istediğiniz metni yazıyoruz..
lcd.setCursor(0,1); //ardından ikinci satıra..
lcd.print(“PLUS ELEKTRONIK”);//yazmak istediğiniz metni yazıyoruz..
delay(2000);// 2 saniye bekleyip..
lcd.clear(); // lcd yi temizliyoruz..
lcd.setCursor(0,0);// ve tekrardan 1. satıra..
lcd.print(“TASARIM”);// //yazmak istediğiniz metni yazıyoruz..
delay(1000);// 1 saniye bekleyip..
lcd.setCursor(0,1); // 2. satıra..
lcd.print(“TOLGA SYTP”);//yazmak istediğiniz metni yazıyoruz..
delay(2000);// ve 2 saniye bekleyip başa dönüyoruz.. hepsi bu kadar basit 🙂
}

Bu yazılım kodunu buradan indirebilirsiniz.. 🙂

Umarım LCD kullanımı iyice anlaşılmıştır. 🙂

Bir yazının daha sonuna geldik umarım faydalı olmuştur anlamadığınız veya kafanıza takılan yerler olursa yorumda veya kişisel sosyal medya hesaplarımdan ulaşabilirsiniz. Konu ile ilgili video en kısa sürede yazıya eklenecektir.Kolay gelsin 🙂

Yorum Yap

İlginizi Çekebilecek Diğer Yazılar