2024.11.27.
18:07

Írta: harsanyireka

I2C LCD kijelző

lcd.jpg

Ezek az LCD-k ideálisak kizárólag karakterek megjelenítésére. Egy 16×2 karakteres LCD például 32 ASCII karaktert képes megjeleníteni két sorban.

Az adapter középpontjában egy 8 bites I/O bővítő chip - PCF8574 - áll. Ez a chip alakítja át az Arduino I2C-adatokat az LCD-kijelzőhöz szükséges párhuzamos adatokká. A board tartalmaz egy apró trimpotot is, amellyel pontosan beállítható a kijelző kontrasztja. A boardon található egy jumper, amely a háttérvilágítás áramellátását biztosítja. A háttérvilágítás intenzitásának szabályozásához eltávolíthatja a jumper-t, és külső feszültséget kapcsolhat a „LED” feliratú pin-re.

Az I2C LCD kijelzőnek csak négy tűje van. A következő a pinout:

i2c-lcd-display-pinout.webp

A GND egy földelt pin.

A VCC a tápellátás pinje. Csatlakoztasd az Arduino 5V-os kimenetéhez.

Az SDA az I2C adattüske.

Az SCL az I2C órajel pin.

 

BEKÖTÉS:

wiring-i2c-lcd-display-with-arduino.webp

 

KÖNYVTÁR TELEPÍTÉSE

Telepítsd a LiquidCrystal_I2C könyvtárat! Ez a könyvtár lehetővé teszi az I2C kijelzők vezérlését a LiquidCrystal könyvtárhoz nagyon hasonló funkciók segítségével.

A könyvtár telepítéséhez navigálj a Sketch > Include Library > Manage Libraries... Sketch > Include Library > Manage Libraries menüpontra... Várd meg, amíg a Library Manager letölti a könyvtárindexet és frissíti a telepített könyvtárak listáját.

manage-libraries.png

 

Szűrd a keresést a 'liquidcrystal' beírásával. Keresd meg a Marco Schwartz által készített LiquidCrystal I2C könyvtárat. Kattints rá erre a bejegyzésre, majd válaszd a Telepítés lehetőséget.

 

PÉLDAKÓD

Ezt a példát a Fájl > Példák > Vezeték > i2c_scanner menüpontban találod

File > Examples > Wire > i2c_scanner.

 

#include <Wire.h>

void setup() {
  Wire.begin();

  Serial.begin(9600);
  while (!Serial); // Leonardo: wait for serial monitor
  Serial.println("\nI2C Scanner");
}

void loop() {
  int nDevices = 0;

  Serial.println("Scanning...");

  for (byte address = 1; address < 127; ++address) {
    // The i2c_scanner uses the return value of
    // the Write.endTransmisstion to see if
    // a device did acknowledge to the address.
    Wire.beginTransmission(address);
    byte error = Wire.endTransmission();

    if (error == 0) {
      Serial.print("I2C device found at address 0x");
      if (address < 16) {
        Serial.print("0");
      }
      Serial.print(address, HEX);
      Serial.println("  !");

      ++nDevices;
    } else if (error == 4) {
      Serial.print("Unknown error at address 0x");
      if (address < 16) {
        Serial.print("0");
      }
      Serial.println(address, HEX);
    }
  }
  if (nDevices == 0) {
    Serial.println("No I2C devices found\n");
  } else {
    Serial.println("done\n");
  }
  delay(5000); // Wait 5 seconds for next scan
}

 

Miután feltöltötted a kódot, indítsd el a soros monitort 9600 baud-on. Látni fogod az I2C LCD kijelző I2C címét, ezt írd fel mert a kódban szükség lesz rá!

i2c-address-scanner-output.png

// enter the I2C address and the dimensions of your LCD here
LiquidCrystal_I2C lcd(0x3F, 16, 2);

 

forrás: https://lastminuteengineers.com/i2c-lcd-arduino-tutorial/ 

 

Szólj hozzá!

A bejegyzés trackback címe:

https://harsanyireka.blog.hu/api/trackback/id/tr3918740146

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása