Hallo zusammen,
als erstes Danke für die Software.
Für alle die als Kundendisplay eine kleine LCD anzeige nutzen wollen stelle ich hier mal meinen Arduino Sketch zur Verfügung.
Der Sketch kann mangelhaft sein, da ich blutiger Amateur bin. Aber er funktioniert, jedoch ohne Umlaute.
Zu beachten ist auch die Länge der Texte, so wird das Lachsbrötchen auf 2 Zeilen aufgeteilt. Wer zu einem 2 Zeilen Display greift sollte das "herzlich willkommen" weg lassen.
in diesem Beispiel verwende ich (weil ich noch da hatte)
1x Arduino UNO
1x I2C Display LCD2004 Blau (4 Reihen, 20 Zeilen)
1x USB Kabel
Das Display wird wie Folgt angeschlossen
UNO -> Display
5V -> VCC
GND -> GND
A4 -> SDA
A5 -> SCL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <Wire.h> // Wire Bibliothek einbinden
#include <LiquidCrystal_I2C.h> // Vorher hinzugefügte LiquidCrystal_I2C Bibliothek einbinden
LiquidCrystal_I2C lcd(0x3F, 16, 2); //Hier wird festgelegt um was für einen Display es sich handelt. In diesem Fall eines mit 16 Zeichen in 2 Zeilen und der HEX-Adresse 0x3F. Für ein vierzeiliges I2C-LCD verwendet man den Code "LiquidCrystal_I2C lcd(0x27, 20, 4)"
void setup()
{
lcd.init(); //Im Setup wird der LCD gestartet
lcd.backlight(); //Hintergrundbeleuchtung einschalten (lcd.noBacklight(); schaltet die Beleuchtung aus).
Serial.begin(9600);
// auf serielle Verbindung warten
while (!Serial) {;}
}
void loop()
{
// auf serielle Eingabe warten
if (Serial.available()) //wenn Daten über Seriellen Port empfangen werden
{
delay (100); //warte 100ms, damit alle Daten angekommen sind
lcd.clear(); //LCD Löschen
lcd.setCursor(0, 0);//Hier wird die Position des ersten Zeichens festgelegt. In diesem Fall bedeutet (0,0) das erste Zeichen in der ersten Zeile.
lcd.print("herzlich willkommen");
lcd.setCursor(0, 1);// In diesem Fall bedeutet (0,1) das erste Zeichen in der zweiten Zeile.
while (Serial.available() > 0) //solange Daten über Serial kommen
{
lcd.write(Serial.read()); // schreibe auf das LCD was Serial empfangen
}
Serial.flush(); // lösche Seriellen Puffer
}
}