Auf einem 2-zeiligem oder 4-zeiligem LCD sollen Zufallszahlen angezeigt werden.
So sieht es auf einem 4-zeiligen LCD aus:


Die Helligkeit kann mit einem Potentiometer auf der Rückseite des LCDs eingestellt werden.
Schaltpläne
Arduino UNO
schwarz GND
rot 5V
grün A4
gelb A5
Wemos D1 Mini
schwarz GND
rot 5V
grün D2
gelb D1
ESP32-Wroom
schwarz GND
rot 5V
grün 21
gelb 22
NodeMCU
schwarz GND
rot 5V
grün D2
gelb D1
XIAO-ESP32-C3
schwarz GND
rot 5V
grün D4
gelb D5
ESP32-C6
schwarz GND
rot 5V
grün 23
gelb 22
Wenn dir die Adresse des LCDs nicht bekannt ist, kannst du sie mit diesem Programm 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);
}
Bibliothek für UNO R3 und UNO R4

Funktionen der Bibliothek LCDIC2
Schlüsselwort | Aktion |
---|---|
begin() | LCD starten |
backlight() | Hintergrundbeleuchtung einschalten |
home() | Position auf links oben setzen |
setCursor(Spalte, Zeile) | Cursor in Spalte/Zeile platzieren |
setCursor(Status) | true = Cursor anzeigen false = Cursor verbergen |
clear() | Anzeige löschen |
print("Text") | Text anzeigen |
blink() | blinkender Cursor |
Das Programm:
#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
}
Bibliothek für UNO R3

Funktionen der Bibliothek LiquidCrystal_I2C
Schlüsselwort | Aktion |
---|---|
init() | LCD starten |
backlight() | Hintergrundbeleuchtung einschalten |
home() | Position auf links oben setzen |
setCursor(Spalte, Zeile) | Cursor in Spalte/Zeile platzieren |
clear() | Anzeige löschen |
print("Text") | Text anzeigen |
blink() | blinkender Cursor |
Das Programm:
#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
}

🔗Sonderzeichen erstellen (externer Link abgerufen am 19.02.23)
Letzte Aktualisierung: