Näherungsschalter induktiv


Google-Suche auf MEINE-SCHALTUNG.de :





Dauerkalender


Laufschrift
mit LCD-Display 20x4 und Arduino

In dem Versuch wird ein LCD-Display 20x4 vom Arduino angesteuert. Die Teilnehmer sind:
- LCD-Display mit 4 Zeilen a 20 Zeichen
- Arduino als Steuergerät
- ein Potenziometer (10k) zur Einstellung des Kontrastes (Helligkeit) der Anzeige.

Display

LCD Display 20x4


Die Schaltung ist relativ unkompliziert. Das Display wird mit sechs Leitungen mit Arduino verbunden. Neben weiteren zwei Leitungen, die der Spannungsversorgung des Displays dienen, kommt noch eine dritte, die mit dem Schleifer des Potenziometers verbunden ist. Der Schaltplan sieht dann wie folgt aus:

Schaltplan

Schaltplan (Arduino ohne USB-Anschluss oder Netzteil: Vin > 6 V)

Die zugehörige Testschaltung ist dementsprechend schnell aufgebaut:

Testschaltung

Testschaltung auf einem Steckbrett

In dem Programm kommt die Bibliothek <LiquidCrystal.h> zum Einsatz. Mit der Bibliothek kann ein auf dem HD44780-Chip von Hitachi basierendes Display entweder im 4- oder 8-Bit-Modus angesteuert werden (hier 4-Bit-Modus).
Mit dem Programm bringen wir einen Satz zum Scrollen (Laufschrift). Die Schrift wird mit kleinen zeitlichen Verzögerungen von rechts nach links verschoben. Der zu ausgebende Text ist in der Variable "Satz" untergebracht. Die Variable "Reihe" besteht aus 20 Zeichen, die aktuell auf dem Display angezeigt werden. In einer Schleife werden hier die Zeichen fortlaufend um eine Stelle nach links verschoben. Der letzte Platz in "Reihe", der frei geworden ist, wird anschließend mit einem Zeichen aus dem "Satz" gefüllt.

// *************************************************************
// Kurt - Der Unerschütterliche
// Laufschrift mit
// LCD-Display 4 Zeilen a 20 Zeichen
// Arduino Mega 2560 R3
// *************************************************************

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
String Satz = "Kurt, bist du aberglaeubisch? - Nein, warum? - Du bist mein 13 Verlobter!";
String Reihe = "                    ";
int Satz_Laenge;
char Zeichen;

void setup() {
  lcd.begin(20,4);
  lcd.setCursor(0, 3);
  lcd.print ("xxxxxxxxxxxxxxxxxxxx");
}

void loop() {
  for (int i = 0; i < Satz.length() + 20; i++) {
    for (int j = 0; j < 19; j++) {
      Zeichen = Reihe.charAt (j+1);
      Reihe.setCharAt(j, Zeichen); }
    Zeichen = ' ';
    if (i < Satz.length()) {
      Zeichen = Satz.charAt (i); }
    Reihe.setCharAt(19, Zeichen);
    lcd.setCursor(0, 1);
    lcd.print (Reihe);
    delay(500);
  }
}       
// *************************************************************

Kurzvideo

Kurzvideo (Laufschrift)


Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz