Hallo!
Ich möchte ein LCD-Display 162B von Displaytech (16x2 Characters) zum
Laufen bringen. Hat jemand eine funktionierende Init-Routine? Ich
verwende einen ATMega8!
Vielen Dank!
Ledi
hm, ich meine, so etwas schon mal hier im Forum gesehen zu haben.
Man sollte vielleicht mal endlich eine Suchfunktion einbauen,
oder ein Tutorial erstellen?
Nach eingehender Prüfung konnte ich bis jetzt keinen Fehler feststellen.
Anbei mein Schaltplan, das Datenblatt und der verwendete
Initialisierungscode.
Der Kontrast des Displays lässt sich regeln, wird aber nur in der 1.
Zeile angezeigt.
1
/*
2
LCD Ausgabe für Hitachi HD44780 kompatible LCD Controller
3
4
ATMEGA8/16/32 und kompatibel
5
6
Dieses Beispiel sollte mit allen HD44780 kompatiblen LCD
Du solltest die unbenutzten Datenpins (DB0-DB3) auf GND legen. Offene
Eingänge können jedes beliebige Potential annehmen. So kann es dann
seind as die initialisierung mal klappt, und mal nicht.
Hi
>Du solltest die unbenutzten Datenpins (DB0-DB3) auf GND legen. Offene>Eingänge können jedes beliebige Potential annehmen. So kann es dann>seind as die initialisierung mal klappt, und mal nicht.
Vor solchen Vorschlägen sollte man das Datenblatt lesen.
Displaycontroller haben im allgemeinen einen integrierten
Pull-Up-widerstand. Eine Verbindung nach GND ist da eher
kontraproduktiv.
Datenblatt vom KS0070:
DB0~DB3 'During 4-bit bus mode open these pins'
MfG Spess
Deine Init-Routine sendet am Anfang anscheinend nur einmal das Function
Set ans Display. Im Datenblatt steht aber, dass das dreimal nacheinander
geschehen muss.
Heimo G. schrieb:> Ich möchte ein LCD-Display 162B von Displaytech (16x2 Characters) zum> Laufen bringen. Hat jemand eine funktionierende Init-Routine? Ich> verwende einen ATMega8!
Hast du schon die beiden (ASM bzw. C) aus der Artikelsammlung getestet?
Die Displayanzeige funktioniert grundsätzlich. Allerdings erhalte ich in
der 1. Zeile nur wirres Zeug (000/0000////<<<).
Kann mir wer beim Function-Set helfen? Ich komme damit nicht so ganz
klar!
Heimo G. schrieb:> Die Displayanzeige funktioniert grundsätzlich. Allerdings erhalte ich in> der 1. Zeile nur wirres Zeug (000/0000////<<<).
Wenn du prinzipiell eine Anzeige hast, dann liegt das Problem nicht mehr
in der Init oder im Function Set.
* Anzeigefunktion untersuchen
* Nochmal die Verdrahtung kontrollieren, ob da nicht 2 Datenleitungen
vertauscht wurden.