Anasayfa » Arduino i2c LCD Ekran – LCD Ekran kayan yazı yazma – Arduino projeleri – Arduino Ders – 56 –

Arduino i2c LCD Ekran – LCD Ekran kayan yazı yazma – Arduino projeleri – Arduino Ders – 56 –

arduino projeleri

Arduino ile LCD ekran kullanırken i2c protokolünü kullanan modüller kullanılabilmektedir. Bu modüller 2 adet pin ile ekranların kullanımını sağlamaktadır.

i2c

Hitachi’nin HD44780 tabanlı karakter LCD’si çok ucuzdur ve yaygın olarak bulunur ve herhangi bir proje için önemli bir parçadır. LCD bağlantı kartı kullanılarak, istenen veriler LCD’de görüntülenebilir. I2C veri yolu prensip olarak genel amaçlı çift yönlü olan PCF8574 (NXP’den) etrafında inşa edilmiştir. I2C protokolünü kullanan 8 bit G/Ç bağlantı noktası bulunur. PCF8574, genel amaçlı bir silikon CMOS devresidir. Çoğu mikrodenetleyici ailesi için iki hatlı çift yönlü veri yolu aracılığıyla uzaktan G/Ç genişletmesi (8 bit yarı çift yönlü) (I2C veriyolu) kullanılır. Çoğu bindirmeli modülün PCF8574T (DIP16’da PCF8574’ün SO16 paketi) etrafında kuruludur. i2C kartınız bir PCF8574AT yongasına sahipse, varsayılan adresi 0x3F olarak değişecektir. Kısacası, bindirme kartı PCF8574T’ye ve adrese dayalıysa bağlantılar (A0-A1-A2) lehim ile köprülenmemişse, 0x27 bağımlı adresi olacaktır.

i2c_2
i2c_2

Arduino ile birlikte i2c modülünü kullanarak kodlama yapmak mümkündür.

i2c_sema
i2c_sema

Ekranın kullandığı haberleşme protokolünü öğrenmek için aşağıdaki kodları kullanabilirsiniz.

//Görsel İşitsel Teknoloji Kanalı
//wwww.teknikerler.com
//Kerim Arı Youtube kanalı i2c  LCD Haberleşme protokolü öğrenme  Kodları  - kullanımı örnek Kodları


#include <Wire.h>
void setup()
{
  Serial.begin (9600);
  Serial.println ("I2C Ekran türü okunuyor...");
  Wire.begin();
  
  for (byte e = 8; e < 150; e++)
  {
    Wire.beginTransmission (e);
    if (Wire.endTransmission () == 0)
    {
      Serial.println ("İletişim yolu bulundu  ..OK");
      Serial.print ("Ekran Türü : ");
      Serial.print (e, DEC);
      Serial.print (" (0x");
      Serial.print (e, HEX);
      Serial.println (")");
    }
  }
  Serial.println ("Tamamlandı. ");
}

void loop() {}

Ekranınızın haberleşme protokolünü öğrenmişseniz artık ekranınıza yazılar yazdırmaya başlayabilirsiniz.

//Görsel İşitsel Teknoloji Kanalı
//wwww.teknikerler.com
//Kerim Arı Youtube kanalı i2c LCD kayan yazı Kodları - kullanımı örnek Kodları

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F,16,2);
char * mesajiniz = "                Gorsel, isitsel, Teknoloji Kanalıma Hosgeldiniz. Kanalima abone olmayi ve bu videoyu begenmeyi unutmayin.                ";
void setup()
{
  lcd.init();       
  lcd.backlight();
  lcd.setCursor(1,0);
  lcd.print("Merhaba Dunya");
  
  
}


void loop()
{
  for (int letter = 0; letter <= strlen(mesajiniz) - 16; letter++)
  {
    showLetters(0, letter);
  }
}

void showLetters(int printStart, int startLetter)
{
  lcd.setCursor(printStart, 1);
  for (int letter = startLetter; letter <= startLetter + 15; letter++) // Print only 16 chars in Line #2 starting 'startLetter'
  {
    lcd.print(mesajiniz[letter]);
  }
  lcd.print(" ");
  delay(250);
}
i2c_sema_pot
i2c_sema_pot

//Görsel İşitsel Teknoloji Kanalı
//wwww.teknikerler.com
//Kerim Arı Youtube kanalı i2c  LCD Kodları  - kullanımı örnek Kodları


#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F,16,2);
int pot = A0;
void setup()
{
  
  lcd.init();       
  lcd.backlight();
  lcd.setCursor(1,0);
  lcd.print("Merhaba Dunya");
  lcd.setCursor(6,1);
  lcd.print("GiT");
  delay(2000);
  lcd.clear();
  
}


void loop()
{

int pot_dgr = analogRead(pot);

lcd.clear();
  lcd.setCursor(0,0);
 // lcd.autoscroll();
  lcd.print("EKRAN TEST");
  lcd.setCursor(0,1);
  lcd.print(pot_dgr);
  delay(1000);
  
 
  
  //delay(1000);
  //lcd.noBacklight();
  //delay(1000);
  //lcd.backlight();

  //lcd.blink();
 // lcd.cursor();
  //delay(350);

}

Videoyu İZLEMEK İÇİN TIKLAYINIZ

2 thoughts on “Arduino i2c LCD Ekran – LCD Ekran kayan yazı yazma – Arduino projeleri – Arduino Ders – 56 –

  1. Merhabalar, i2c ile 4×20 lcd bağladım fakat ekrana yolladığım her text mesajı yada int float vb sadece tek karakter basıyor, örneğin Sıcaklık : dediğimde sadece S karakteri görünüyor, ancak her karakteri ayrı ayrı lcd.print yaparsam tüm metin görünüyor, neden olabilir sizce?

    1. Merhaba, Kullanmış olduğunuz kütüphaneden kaynaklanıyor olabilir. Farklı bir kütüphane ile deneyin.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir