Bei­spiel­pro­gramm LCD


Auf einem 2-zei­li­gem oder 4-zei­li­gem LCD sol­len Zufalls­zah­len ange­zeigt werden.

So sieht es auf einem 4-zei­li­gen LCD aus:

Schlie­ße das LCD an:

Die Hel­lig­keit kann mit einem Poten­tio­me­ter auf der Rück­sei­te des LCDs ein­ge­stellt werden.

Der Schalt­plan

Wenn dir die Adres­se des LCDs nicht bekannt ist, kannst du sie mit die­sem Pro­gramm herausfinden:

# include "Wire.h"

void setup()
{
  Wire.begin();
  Serial.begin(9600);
  delay(1000);
  Serial.print("I2C Scanner");
}

void loop()
{
  byte Fehler, Adresse;
  int Geraete = 0;
  Serial.println("Starte Scanvorgang");

  for (Adresse = 1; Adresse < 127; Adresse++ )
  {
    // Übertragung starten
    Wire.beginTransmission(Adresse);

    // wenn die Übertragung beendet wird
    Fehler = Wire.endTransmission();

    if (Fehler == 0)
    {
      Serial.print("I2C Gerät gefunden - Adresse: 0x");
      if (Adresse < 16) Serial.print("0");
      Serial.print(Adresse, HEX);
      Serial.println("");
      Geraete++;
    }
  }
  if (Geraete == 0) Serial.println("Keine I2C Geräte gefunden\n");
  else Serial.println("Scanvorgang abgeschlossen");

  delay(10000);
}

Biblio­thek für UNO R3 und UNO R4

Funk­tio­nen der Biblio­thek LCDIC2

Schlüs­sel­wortAkti­on
begin()LCD star­ten
back­light()Hin­ter­grund­be­leuch­tung einschalten
home()Posi­ti­on auf links oben setzen
setCursor(Spalte, Zei­le)Cur­sor in Spalte/Zeile platzieren
setCursor(Status)true = Cur­sor anzeigen
fal­se = Cur­sor verbergen
clear()Anzei­ge löschen
print("Text")Text anzei­gen
blink()blin­ken­der Cursor

Das Pro­gramm:

# include "LCDIC2.h"

// 4-zeiliges LCD
LCDIC2 lcd(0x27, 20, 4);

// 2-zeiliges LCD
// LCDIC2 lcd(0x3f, 16, 2);


void setup() 
{
  // Zufallsgenerator starten
  randomSeed(analogRead(A0));

  // LCD starten
  lcd.begin();

  // Cursor "verstecken"
  lcd.setCursor(false);

  // Ausgabe auf dem LCD
  // Cursor auf Position 0 in Zeile 0 setzen
  lcd.setCursor(0, 0);
  lcd.print("Zufallszahlen:");
  lcd.setCursor(0, 1);

  for (int i = 1; i <= 6; i++)
  {
    int Zahl =  random(1, 7);
    lcd.print(String(Zahl));
    lcd.print(" ");
  }
}

void loop() 
{
  // bleibt leer, Programm läuft nur einmal  
}

Biblio­thek für UNO R3

Funk­tio­nen der Biblio­thek LiquidCrystal_I2C

Schlüs­sel­wortAkti­on
init()LCD star­ten
back­light()Hin­ter­grund­be­leuch­tung einschalten
home()Posi­ti­on auf links oben setzen
setCursor(Spalte, Zei­le)Cur­sor in Spalte/Zeile platzieren
clear()Anzei­ge löschen
print("Text")Text anzei­gen
blink()blin­ken­der Cursor

Das Pro­gramm:

# include "LiquidCrystal_I2C.h"

// 2-zeiliges LCD
// LiquidCrystal_I2C lcd(0x3f, 16, 2);

// 4-zeiliges LCD
LiquidCrystal_I2C lcd(0x27, 20, 4);

void setup() 
{
  // Zufallsgenerator starten
  randomSeed(analogRead(A0));

  // LCD starten
  lcd.init();

  // Hintergrundbeleuchtung einschalten
  lcd.backlight();

  // Ausgabe auf dem LCD
  // Cursor auf Position 0 in Zeile 0 setzen
  lcd.setCursor(0, 0);
  lcd.print("Zeige Zufallszahlen:");
  
  lcd.setCursor(0, 1);

  // mit einer for-Schleife 6 Zufallszahlen erzeugen 
  // und anzeigen
  for (int i = 1; i <= 6; i++)
  {
    int Zahl =  random(1, 7);
    lcd.print(String(Zahl));
    lcd.print(" ");
  }
}

void loop() 
{
  // bleibt leer, Programm läuft nur einmal  
}

🔗Son­der­zei­chen erstel­len (exter­ner Link abge­ru­fen am 19.02.23)


Letzte Aktualisierung: 7. Apr 2024 @ 8:52