Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Einführung

In diesem Arduino-Tutorial lernen Sie, wie Sie ein LCD (Liquid Crystal Display) mit einem Arduino verbinden und verwenden. Solche LCD-Displays sind in Elektronikprojekten sehr beliebt, da sie sich hervorragend zur Anzeige einfacher Informationen – wie Sensordaten – eignen und dabei sehr kostengünstig sind.

Ich habe sie bereits in mehreren meiner Arduino-Projekte eingesetzt, zum Beispiel:

Sie können das folgende Video ansehen oder das schriftliche Tutorial unten lesen. Es deckt alles ab, was Sie über die Verwendung eines LCD-Zeichendisplays mit Arduino wissen müssen: Pinbelegung, Verdrahtungsplan und mehrere Beispiel-Codes.

Was ist ein LCD-Zeichendisplay?

Ein LCD-Zeichendisplay ist ein spezieller Displaytyp, der nur einzelne ASCII-Zeichen fester Größe ausgeben kann. Aus diesen einzelnen Zeichen lassen sich dann Texte bilden.

Betrachtet man das Display genauer, erkennt man kleine rechteckige Bereiche, die jeweils aus einem 5×8-Pixel-Raster bestehen. Jedes Pixel kann einzeln angesteuert werden, sodass sich innerhalb jedes Gitters Zeichen darstellen lassen.

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Die Anzahl dieser rechteckigen Bereiche definiert die Größe des LCD. Das populärste Modell ist das 16×2 LCD mit zwei Zeilen à 16 Zeichen. Es gibt auch andere Größen wie 16×1, 16×4, 20×4 usw., die alle nach demselben Prinzip funktionieren. Zudem können diese LCDs unterschiedliche Hintergrund- und Textfarben haben.

16×2 LCD Pinbelegung

Das Display hat 16 Pins. Von links nach rechts:

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Die LiquidCrystal-Bibliothek übernimmt fast die gesamte Low-Level-Steuerung. Wir verwenden den 4-Bit-Modus, sodass nur 4 Datenleitungen (D4–D7) benötigt werden.

Arduino mit LCD verbinden – Verdrahtungsplan

Hier ist der Schaltplan für die Verbindung eines 16×2 LCD mit Arduino:

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Verwendete Arduino-Pins (Digital):

Benötigte Bauteile

Kontrasteinstellung

Der Kontrast wird über die Spannung am Vo-Pin geregelt. Ein Potentiometer erlaubt eine feine Justierung von 0–5 V.

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Geht es auch ohne Potentiometer?

Ja. Zwei Optionen:

  1. Spannungsteiler aus zwei Widerständen (z. B. 1 kΩ + 220 Ω → ca. 1 V am Vo-Pin).
  2. PWM-Signal vom Arduino an Vo-Pin:
    analogWrite(11, 100); // PWM an Pin D11, Wert 100 von 255 ≈ 2 V
Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Arduino LCD Code – Grundbeispiel

Ein einfaches Programm zur Demonstration der LiquidCrystal-Bibliothek:

/* Arduino LCD Tutorial
 * Erstellt von Dejan Nedelkovski, www.HowToMechatronics.com
 */
#include <LiquidCrystal.h>

LiquidCrystal lcd(1, 2, 4, 5, 6, 7); // (rs, enable, d4, d5, d6, d7)

void setup() {
  lcd.begin(16, 2); // Initialisierung: 16 Spalten, 2 Zeilen
}

void loop() {
  lcd.print("Arduino");
  delay(3000);
  lcd.setCursor(2, 1); // Spalte 2, Zeile 1 (0-indexed)
  lcd.print("LCD Tutorial");
  delay(3000);
  lcd.clear();
  lcd.blink();
  delay(4000);
  lcd.setCursor(7, 1);
  delay(3000);
  lcd.noBlink();
  lcd.cursor();
  delay(4000);
  lcd.noCursor();
  lcd.clear();
}

Code-Erklärung

Scrollender Text auf 16×2 LCD

Bei Texten > 16 Zeichen ermöglichen scrollDisplayLeft() und scrollDisplayRight() das Scrollen.

#include <LiquidCrystal.h>
LiquidCrystal lcd(1, 2, 4, 5, 6, 7);

void setup() {
  lcd.begin(16, 2);
  lcd.print("Scrolling Text Example");
}

void loop() {
  lcd.scrollDisplayLeft();
  delay(500); // Scrollgeschwindigkeit
}

Für mehr Kontrolle kann man das Scrollen manuell per for-Schleife realisieren:

#include <LiquidCrystal.h>
LiquidCrystal lcd(1, 2, 4, 5, 6, 7);

void setup() {
  lcd.begin(16, 2);
}

void loop() {
  // Nach rechts scrollen
  for (int i = 0; i <= 13; i++) {
    lcd.setCursor(i, 0);
    lcd.print("LCD");
    delay(500);
    lcd.clear();
  }
  // Nach links scrollen
  for (int i = 12; i >= 1; i--) {
    lcd.setCursor(i, 0);
    lcd.print("LCD");
    delay(500);
    lcd.clear();
  }
}

Eigene Zeichen (Custom Characters) erstellen & anzeigen

Neben ASCII-Zeichen können 8 benutzerdefinierte Zeichen (5×8 Pixel) definiert werden.

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen
#include <LiquidCrystal.h>

byte heart[8] = {
  B00000, B01010, B11111, B11111,
  B01110, B00100, B00000, B00000
};
byte smile[8] = {
  B00000, B00000, B01010, B00000,
  B10001, B01110, B00000, B00000
};
byte lock[8] = {
  B01110, B10001, B10001, B11111,
  B11011, B11011, B11111, B00000
};
byte character[8] = {
  B11111, B10101, B11111, B01010,
  B01110, B11111, B01110, B01110
};

LiquidCrystal lcd(1, 2, 4, 5, 6, 7);

void setup() {
  lcd.begin(16, 2);
  lcd.createChar(0, heart);
  lcd.createChar(1, smile);
  lcd.createChar(2, lock);
  lcd.createChar(3, character);
  lcd.clear();
  lcd.print("Custom Character");
}

void loop() {
  lcd.setCursor(1, 1);  lcd.write(byte(0)); // Herz
  lcd.setCursor(5, 1);  lcd.write(byte(1)); // Smiley
  lcd.setCursor(9, 1);  lcd.write(byte(2)); // Schloss
  lcd.setCursor(13, 1); lcd.write(byte(3)); // Figur
}

Erklärung:

Komplettes Arduino 16×2 LCD Tutorial: Anschließen, Programmieren & Daten anzeigen

Siehe auch: Arduino Touch Screen Tutorial | TFT LCD

Fazit

Wir haben alle Grundlagen behandelt: Pinbelegung, Verdrahtung, Kontrasteinstellung, Textausgabe, Scrollen und benutzerdefinierte Zeichen. Das gezeigte 16×2 LCD ist repräsentativ – andere Größen (16×4, 20×4, …) funktionieren identisch.

Ich hoffe, dieses Tutorial war hilfreich. Fragen gerne in den Kommentaren. Schauen Sie auch in meine Sammlung von 30+ Arduino-Projekten.

Herstellungsprozess

  1. Senkerodieren (Plunge EDM) meistern: Der ultimative Leitfaden zur präzisen Elektroerosion
  2. Gusseisen 101: Zusammensetzung, Verwendung, Vor- & Nachteile
  3. Umfassender Leitfaden zu Hochofen: Definition, Komponenten und Wartung
  4. Hobelmaschinen: Der komplette Leitfaden – Funktion, Typen, Vor- und Nachteile
  5. Schleifmaschinen: Der komplette Leitfaden – Eigenschaften, Einsatz, Vor- und Nachteile
  6. Metallverarbeitung: Von der Wissenschaft zum Handwerk
  7. Umfassender Leitfaden zu CNC-Maschinen: Merkmale, Vorteile und Anwendungen
  8. Der ultimative Leitfaden zu Pressen: Typen, Funktionen & Bediener
  9. Hydraulische Presse erklärt: Funktionsweise & Hauptanwendungen
  10. Kunststoffe erklärt: Typen, Anwendungen und Vorteile im Alltag