Hi. Ich wollte ein LCD im 8bit-Modus initialisieren. Allerdings funktioniert das nicht so ganz. Der Datenbus (8bit) hängt an PORTA, die Enableleitungen an PORTC.0und1, die Registerselectleitung an PORTD.7 und Read/Write liegt an Masse. (kein Busyflag lesbar). Vom Mikrocontroller her funktioniert alles anscheinend prächtig. (Über die Leitungen PORTC2,3 ist ein LED-Display angeschlossen, dessen Segmenteingänge über einen 74HC541 Treiber an PORTA angeschlossen ist. Die Leitungen 2,3 werden beim schreiben der Leitungen 0,1 im Code mitgesetzt, um zu sehen, ob die Anzeige flackert. Das tut sie, also scheint der Code zu funktionieren.) Das LCD Display ist ein WINTEC 4x27 von Pollin mit zwei Controllern Warum zeigt das LCD nach der Initialisierung trotzdem die zwei schwarzen Balken an, und nicht "Test" ? (in Linie 1+3) Bitte keine Diskussionen über den Sinn oder nicht-Sinn der Verdrahtung des LCDs über 3 Ports. Das ist vom Leiterplattenlayout her das günstigste, und die Leiterplatte ist geätzt, aufgebaut, und fertig verlötet. Kurz gesagt, an dem Fakt kann ich nichts mehr ändern. Dies schreibe ich nur, da alle vorhergehenden Hilferufe in Kommentaren über den Unsinn dieser Verkabelung endeten. Hier die LCD-8bit ansteuerung im Anhang
> Warum zeigt das LCD nach der Initialisierung trotzdem die zwei
schwarzen Balken an, und nicht "Test" ?
Der Kontrast ist aber korrekt eingestellt, oder? Ich weiß ist ne doofe
Frage aber das mir selbst mal passiert. Wenn der Kontrast zu groß ist
dann hat man eben nur Balken, obwohl der Code einwandfrei funktioniert
:-)
Ja, der Kontrast ist ordentlich eingestellt. Ich schätze, wenn es daran läge, würden 4 schwarze Balken erscheinen, und nicht nur 2. Wenn ich den Kontrast ganz aufdrehe, dann schimmern auch die 2. + 4. Zeile ganz schwach als schwarzbalken durch. Kurzum : Ja, der Kontrast ist ok, und daran liegts nicht.
noch ne blöde Idee, hast Du mal das Timing geprüft? 40ms sind ne verflucht lange Zeit. Das mit dem schwarzen Balken habe ich, wenn das Timing wieder mal durcheinander gekommen ist
Wieso ? Kann doch theoretisch nicht lang genug sein, oder ? (Manche schreiben, die hätten ein LCD schon mit Tastern und Schaltern initialisiert.)
Ich weiß nicht, ob sich ein LCD mit schaltern und Tastern initialisieren läßt und ob es sinnvoll ist, sowas zu machen. Das soll jeder für sich entscheiden. Alles was ich Dir sagen kann ist, dass es auf jeden Fall nicht zu kurz sein darf, weil dann nix mehr geht und zu lang würde ich es auch nicht machen. Ich würde mich hier an Spezifikationen des Datenblattes halten und das läßt sich ja dann auch einfach mit einem Scope nachmessen.
Hallo Christoph, ich hab mir dasselbe LCD bei Pollin bestellt. Auch ich habe Probleme es anzusteuern.(allerdings unter C) Selbst wenn ich einen der Controller(mit z.B. EN2 an Masse) "ausschalte" gibt es nur unverständliche Zeichen aus. Danach habe ich es mit dem 4-Bit Modus probiert, ebenfalls Fehlanzeige. Allerdings wenn ich ein 2*16 LCD von Reichelt an meinen µC stecke funktioniert mein Programm einwandfrei. Ich gehe also davon aus, daß es sich hier um ein Hardwareproblem seitens des Displays handelt.(die LCD's von Pollin sind doch gebraucht oder?) Gruß Thomas
Das 4x27 LCD von Pollin müsste eigentlich neu sein. Auf dem LCD ist kein Orginal 44780 sondern irgendein Nachbau (z.B. von Samsung), wenn ich mich recht erinnere. Diese Nachbauten sind sehr viel empfindlicher als die orginalen 44780, da kann es durchaus sein, dass ein 44780 läuft, aber bei der Samsung Version nichts geht. Haben die Samsung ICs nich noch ein paar vom 44780 abweichende Register um die erweiteren Treiber freizuschalten ?
Ich habe ebenfalls das 4x27, dazu ein 2x24 und 2x16 mit orig. 44780 - alle von Pollin. Im 4-Bit-Mode funktioniert keines, weder am Mega8 noch Mega 16. Manchmal werden sie initialisiert, selten zeigen sie etwas an. Meistens passiert gar nichts. Dagegen am Parallelport im 8-Bit-Mode funktionieren sie ohne Probleme, auch mit einfachem VB-Code, der nicht besonders aufs Timing achtet. Scheint also irgendwie am Display oder Flankensteilheit der Ports zu liegen.
Hi! Vorsicht mit den 40 ms. Eigentlich steht immer "15ms or more" aber ich habe jetzt auch mal mit einem von Reichelt so meine Probleme gehabt bis die Zeit für das Init unter 20ms lag. Vermutlich gehen die dann in einen Sicherheitsmodus, oder es war einfach kaputt. MFG Uwe
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.