İçindekiler:

I2C ile 16x2 LCD Kullanın: 4 Adım
I2C ile 16x2 LCD Kullanın: 4 Adım

Video: I2C ile 16x2 LCD Kullanın: 4 Adım

Video: I2C ile 16x2 LCD Kullanın: 4 Adım
Video: Arduino ve I2C ile 4x20 - 2x16 LCD Ekran Kullanımı 2024, Temmuz
Anonim
I2C ile 16x2 LCD kullanın
I2C ile 16x2 LCD kullanın
I2C ile 16x2 LCD kullanın
I2C ile 16x2 LCD kullanın
I2C ile 16x2 LCD kullanın
I2C ile 16x2 LCD kullanın

Önceki Instructable'larımdan birinde, bir LCD'yi Arduino Uno'ya nasıl bağlayacağınızı ve arayüzleyeceğinizi ve üzerindeki değerleri nasıl görüntüleyeceğinizi gösterdim. Ancak gözlemlendiği gibi, çok fazla bağlantı vardı ve proje çok fazla kablo nedeniyle çok dağınık olmaya başladıysa.

Bu Eğitilebilir Kitapta, LCD'yi kontrol etmek ve kullanmak için yalnızca 4 pime sahip olacak bir I2C'ye bir LCD'yi nasıl bağlayacağınızı göstereceğim. Öyleyse başlayalım.

Adım 1: Gerekli Bileşenler

Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler
Gerekli Bileşenler

Bu proje için ihtiyacınız olacak:

  • Arduino Uno
  • 16x2 LCD
  • 16x2 LCD için I2C
  • Bağlantı kabloları

Tüm bunlarla birlikte, bağlantılar kısmına geçelim.

2. Adım: Bağlantılar

Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar
Bağlantılar

Resimlere bakın ve bağlantıları yapın. Oldukça basit, sadece I2C'yi LCD'nin bağlantı noktalarına takmanız ve yerine lehimlemeniz gerekiyor. Ardından SCL pinini Arduino üzerindeki A4 pinine ve SDA pinini Arduino üzerindeki A5 pinine bağlayın.

LCD'de başlık pinlerini zaten lehimlediğim için I2C'yi lehimlemiyorum. Ancak I2C'yi LCD'ye lehimlemenizi öneririm

3. Adım: Kodlayın

Arduino IDE'de bulunan bir LCD I2C ana kütüphanesi vardır. Ancak içindeki kodda küçük bir sorun var. Bu kitaplıktaki tüm örnekler, I2C'nin varsayılan adresini 0x27 olarak kabul eder. Bu yüzden önce I2C'mizin adresini bulmalıyız. Bunu I2C tarayıcı kodunu kullanarak yapabiliriz. I2C adresine sahip olduğumuzda, bu değeri örnek kodda değiştirebilir ve kullanmaya başlayabiliriz.

I2C Tarayıcı Kodu:

#Dahil etmek

geçersiz kurulum() { Wire.begin(); Seri.başla(9600); while (!Seri); // seri monitör için bekle Serial.println("\nI2C Tarayıcı"); } void loop() { bayt hatası, adres; int nDevices; Serial.println("Taranıyor…"); nCihazlar = 0; for(address = 1; address < 127; address++) { // i2c_scanner, bir aygıtın adresi kabul edip etmediğini // görmek için Write.endTransmistion'ın // dönüş değerini kullanır. Wire.beginTransmission(adres); hata = Wire.endTransmission(); if (hata == 0) { Serial.print("0x adresinde I2C aygıtı bulundu"); if (adres<16) Serial.print("0"); Serial.print(adres, HEX); Serial.println(" !"); nCihazlar++; } else if (hata==4) { Serial.print("0x adresinde bilinmeyen hata"); if (adres<16) Serial.print("0"); Serial.println(adres, HEX); } } if (nDevices == 0) Serial.println("Hiç I2C cihazı bulunamadı\n"); başka Serial.println("bitti\n"); gecikme (5000); // sonraki tarama için 5 saniye bekleyin }

Örnek Kod(Seri Monitörde girilen karakterleri görüntülemek için):

#include #include

LiquidCrystal_I2C lcd (0x3F, 20, 4); // 16 karakter ve 2 satırlık bir ekran için LCD adresini 0x27 olarak ayarlayın

geçersiz kurulum()

{ lcd.init(); // lcd lcd.backlight()'ı başlat; Seri.başla(9600); }

boşluk döngüsü()

{ // karakterler seri port üzerinden geldiğinde… if (Serial.available()) { // mesajın tamamının ulaşması için biraz bekleyin delay(100); // ekranı temizle lcd.clear(); // mevcut tüm karakterleri oku while (Serial.available() > 0) { // her karakteri LCD'de göster lcd.write(Serial.read()); } } }

Adım 4: Çıktı

Çıktı
Çıktı
Çıktı
Çıktı

Kodu yükledikten sonra, gitmeye hazırsınız. Bu Eğitilebilirlik için Seri Baskı Kodu örneğini aldım. Şimdi kodu yükledikten sonra, Seri Monitörü açın ve bir kelime yazın ve "gönder" e tıklayın. Şimdi bu değerin LCD'de görüntülendiğini görmelisiniz.

Önerilen: