Einleitung
Willkommen zu einem weiteren Velxio-Tutorial! Heute bauen wir ein klassisches Hello World-Projekt mit einem 20x4 LCD-Display und einem Arduino Uno. Dies ist ein perfektes Projekt für Anfänger, die lernen möchten, wie man Zeichen-LCDs mit Mikrocontrollern verbindet. Wir verwenden die beliebte LiquidCrystal-Bibliothek, die die Steuerung des Displays zum Kinderspiel macht.
Am Ende dieses Beitrags wirst du in der Lage sein, ein 20x4 LCD zu verdrahten, Code zum Anzeigen von Text auf mehreren Zeilen zu schreiben und sogar dynamische Daten wie die Betriebszeit anzuzeigen. Lass uns loslegen!
Schaltplan-Durchlauf

Unser Schaltkreis besteht aus zwei Hauptkomponenten: einem Arduino Uno und einem 20x4 LCD (Modell wokwi-lcd2004). Das LCD hat 16 Pins, aber wir benötigen nur 6 davon für Daten und Steuerung. Hier ist die Verdrahtung:
- RS (Register Select) – verbunden mit Arduino-Pin 12 (grünes Kabel)
- E (Enable) – verbunden mit Arduino-Pin 11 (grünes Kabel)
- D4 – verbunden mit Arduino-Pin 5 (blaues Kabel)
- D5 – verbunden mit Arduino-Pin 4 (blaues Kabel)
- D6 – verbunden mit Arduino-Pin 3 (blaues Kabel)
- D7 – verbunden mit Arduino-Pin 2 (blaues Kabel)
Wir verwenden den 4-Bit-Modus, der nur vier Datenleitungen (D4–D7) anstelle von acht benötigt. Das spart wertvolle I/O-Pins. Das LCD benötigt außerdem Strom (5V) und Masse, aber in Velxio werden diese automatisch verbunden, wenn du die Komponenten platzierst.
Um diesen Schaltkreis in Velxio zu bauen:
- Öffne das LCD Hello World Beispiel oder starte ein neues Projekt.
- Verwende die Komponentenauswahl, um einen Arduino Uno und ein 20x4 LCD hinzuzufügen.

- Klicke auf die Pins und ziehe Drähte, um die obigen Verbindungen herzustellen. Du kannst die Drahtfarben ändern, indem du auf das Farbfeld klickst.
- Deine Leinwand sollte wie der obige Schaltplan aussehen.
Code-Durchlauf

Schauen wir uns nun den Code an. Öffne den Code-Editor in Velxio (du siehst den Monaco-Editor mit Syntax-Hervorhebung). Hier ist der vollständige Sketch:
// LiquidCrystal Library - Hello World
// Demonstrates the use a 20x4 LCD display
#include <LiquidCrystal.h>
// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(20, 4);
// Print a message to the LCD.
lcd.print("Hello, Arduino!");
lcd.setCursor(0, 1);
lcd.print("Velxio Emulator");
lcd.setCursor(0, 2);
lcd.print("LCD 2004 Test");
}
void loop() {
// set the cursor to column 0, line 3
lcd.setCursor(0, 3);
// print the number of seconds since reset:
lcd.print("Uptime: ");
lcd.print(millis() / 1000);
}
Wie es funktioniert
- Bibliothek einbinden:
#include <LiquidCrystal.h>gibt uns Zugriff auf alle LCD-Funktionen. - Pins definieren: Wir erstellen Konstanten für die Pin-Nummern:
rs = 12,en = 11,d4 = 5,d5 = 4,d6 = 3,d7 = 2. Diese entsprechen unserer Verdrahtung. - LCD-Objekt erstellen:
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);teilt der Bibliothek mit, welche Pins verbunden sind. - In
setup():lcd.begin(20, 4);initialisiert das Display mit 20 Spalten und 4 Zeilen.lcd.print()schreibt Text an die aktuelle Cursorposition.lcd.setCursor(spalte, zeile)bewegt den Cursor an eine bestimmte Position (0-basiert).
- In
loop():- Wir bewegen den Cursor zu Zeile 3, Spalte 0.
- Gib “Uptime: ” gefolgt von
millis() / 1000(Sekunden seit Reset) aus.
Um den Code auszuführen, klicke auf die Schaltfläche Compile in der Symbolleiste und dann auf Run.

Wichtige Konzepte
- 4-Bit vs. 8-Bit-Modus: Die Verwendung von nur 4 Datenleitungen (D4–D7) spart Pins. Die LiquidCrystal-Bibliothek übernimmt das Protokoll.
- Cursor-Positionierung:
setCursor(spalte, zeile)– denke daran, dass Zeilen und Spalten bei 0 beginnen. millis(): Gibt Millisekunden seit dem Programmstart zurück. Durch 1000 geteilt ergibt sich die Anzahl der Sekunden.- Bibliotheksverwaltung: Velxio enthält die LiquidCrystal-Bibliothek standardmäßig. Du kannst weitere Bibliotheken über den Bibliotheksmanager hinzufügen.

Häufige Fehler & Debugging-Tipps
- Verdrahtungsfehler: Überprüfe, ob jedes Kabel die richtigen Pins verbindet. Ein vertauschtes D4 und D5 führt zu verstümmelten Zeichen.
- Falsche
begin()-Dimensionen: Wenn dulcd.begin(16, 2)mit einem 20x4 Display verwendest, kann Text abgeschnitten oder falsch ausgerichtet erscheinen. - Fehlende Bibliothek: Wenn du einen Kompilierungsfehler bezüglich
LiquidCrystal.herhältst, stelle sicher, dass die Bibliothek installiert ist (standardmäßig sollte sie vorhanden sein). - Cursor nicht sichtbar: Der Cursor ist standardmäßig unsichtbar. Verwende
lcd.cursor(), um einen Unterstrich-Cursor anzuzeigen. - Text wird nicht aktualisiert: In der Schleife musst du möglicherweise die Zeile löschen, bevor du neue Daten ausgibst. Verwende
lcd.setCursor(0, 3); lcd.print(" ");, um die Zeile zu löschen.
Vorgeschlagene Erweiterungen
Sobald das grundlegende Hello World funktioniert, probiere diese Verbesserungen aus:
- Text scrollen: Verwende
lcd.scrollDisplayLeft()oderlcd.scrollDisplayRight(), um scrollende Nachrichten zu erstellen. - Sensordaten anzeigen: Lese einen analogen Sensor (z. B. Potentiometer) aus und zeige seinen Wert auf dem LCD an.
- Benutzerdefinierte Zeichen: Erstelle eigene Symbole mit
lcd.createChar(). - Tasteneingabe: Füge einen Knopf hinzu, um die angezeigte Nachricht zu ändern.
- Mehrere Bildschirme: Verwende eine Zustandsmaschine, um durch verschiedene Informationsseiten zu blättern.
Probier es selbst aus!
Bereit, dein eigenes LCD-Projekt zu bauen? Öffne das LCD Hello World Beispiel in Velxio und beginne zu experimentieren. Du kannst den Code ändern, die Verdrahtung anpassen oder neue Komponenten hinzufügen – alles in deinem Browser, ohne Hardware.
Viel Spaß beim Bauen!