PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Nur Schwarze Balken im LCD!!!



Stern_76
29.12.2004, 13:33
Hallo liebe Community,
Vor ein Paar Wochen habe ich ein LCD mit HD44780 Baustein in meinem SAB80C537 angeschlossen und das mit entsprechende Software laufen gelassen. An dem Tag lief der angegebene Text auf dem Display einwandfrei. Ein Tag später dagegen, hat es angefangen den Text + schwarze Balken am Ende der erste Zeile anzuzeigen und das ein Paar minuten lang. Danach hat es aber nur noch scwarze Balken angezeigt. Ich glaubte daß das Problem Hardware war, da ich in der Software nichts geändert habe. Deswegen habe ich noch 2 Stück das gleiche LCD gekauft und mit denen probiert aber das Ergebnis war wieder gleich. Es zeigt nur 16 schwarze dunkle Balken im ersten Zeile (ins gesamt 2x16 Zeichen alphanumerisches Display). Egal was ich mache, ausser diesen schwarzen Balken gibt es keine Reaktion in dem LCD, auch wenn ich das LCD ein- oder ausschalte, wenn ich reset im Mikrocontroller mache oder .
Meine erste Diagnose ist dann folgendes; die Displays sind nicht kaputt, da ich 3 verschiedene von denen benutze (2 von denen sind neu!). Mit der Software sollte das Problem auch nicht sein, da ich mit der gleichen Software schon mal das Display laufen gelassen habe.
Ist etwa mein Mikrocontroller kaputt oder mache ich etwas mit der Stromversorgung falsch? Das Display braucht eine -5 Volt Spannung für den Kontrast und +5 Volt für LCD (ich nehme die +5 Volt von dem entsprechenden Pin aus dem Mikrocontroller). Für -5 Volt nehme ich ein externe Spannungsquelle, schliesse den Pluspol an GND vom Mikrocontroller und den -5 Volt an den Kontrastpin. Mit dieser Einstellung hatte es eigentlich gut funktioniert.
Was kann ich machen um sicher zu stellen daß das Problem nicht an Displays oder im Software liegt?
MfG
KurtM

tobimc
29.12.2004, 13:36
Hi

Normalerweist heißt der Balken, dass das LCD nciht initialisiert wurde.

Überprüfe den kontrast nochmal, denn man sollte nie vollen Kontrast nehmen, da man sonst die Zeichen nciht sieht.

Überprüfe mal, ob alle Kabel OK sind.
Und ob das LCD auf irgendwas liegt, was leiten könnte.

Grüße, Tobi

Stern_76
29.12.2004, 13:48
Hallo Tobi,

Normalerweist heißt der Balken, dass das LCD nicht initialisiert wurde.
Das Problem kann eigentlich wohl die Initialisation sein. Für mich Initialisation von dem LCD heißt 2-3 bestimmte Befehle hintereinander mit bestimmten mindest Zeitabständen eingeben. Dann sollte das Display initialisiert sein. Ich habe jede menge verschiedene Zeitabstände eingegeben aber bei diesen Balken ändert sich immer noch nichts.
Wenn das Problem bei der vollen Kontrast Einstellung liegen würde, würde er ja die schwarze Balken auch in der zweiten Zeile zeigen. Aber er zeigt einfach nichts in der zweiten Zeile...
Dein Vorschlag ist aber gut um das Problem noch klarer zu stellen.
Danke
MfG

tobimc
29.12.2004, 14:18
Hi

Das mit dem Kontrast hast du recht.
Das Prob hatte ich auch mal mit meinem 16*2.

Aber da lags an der Initialisation. Probier mal ne andere Initialisierungssequenz. Es gibt dazu mehr Infos im Datenblatt.

Als Zeitabstand dürften 10ms gut reichen.

Liebe Grüße, Tobi

Stern_76
29.12.2004, 14:58
Hallo,
meine Initialisationssequenz habe ich unten angegeben. Hast du ein Vorschlag was und wie ich diese Sequenz ändern soll? In dem Datasheet ist es auch das gleiche....

void main(void)
{ // Display Initialisation....
msDelay(5); // 25ms!! Warten
command(0x38); //0 0 0 0 1 DL N F * *
msDelay(5); //25ms Warten
command(0x38);
msDelay(5);
command(0x38);
msDelay(5);
command(0x0C); //Display On/Off and settings control (40uS)
msDelay(5);
command(0x01); //Clears display and returns cursor to the home position (1.64mS)
msDelay(5);
CursorPosition(0x82);
display("**TEST**");
msDelay(5);
command(0x01);
}

tobimc
29.12.2004, 15:55
HI

Was hast du für ein LCD?

Grüße, tobi

Stern_76
29.12.2004, 16:09
Hallo Tobi,
Ich habe ein BT21605 mit HD44780 Baustein.
Gruß

bhm
30.12.2004, 00:52
Wenn das Problem bei der vollen Kontrast Einstellung liegen würde, würde er ja die schwarze Balken auch in der zweiten Zeile zeigen. Aber er zeigt einfach nichts in der zweiten Zeile...

ist so nicht korrekt. Wenn das Display nicht initialisiert ist, wird auch nur eine Zeile angesprochen, das Multiplexen für die 2. Zeile ist aus. Ich hab es gerade bei mir ausprobiert, wenn ich das Display bei laufendem µC einstecke ist nur Zeile 1 und 3 (4-zeiliges LCD) dunkel, Zeile 2 und 4 sind hell. Wenn aber nur eine Zeile angesprochen wird bekommt die zuviel Kontrast, dh. ist komplett schwarz.
Versuch mal an der Kontrastspanung zu drehen, aber bitte in die richtige Richtung, welche das auch sein mag. Im Übrigen kommen mir -5V komisch vor.

Ansonsten ist mir nicht klar, ob alle 3 Display das Problem jetzt dauernd zeigen, oder nach einem Tag Betrieb, oder wie genau

ciao .. bernd

BlueNature
30.12.2004, 05:45
Hallo Bernd!



Versuch mal an der Kontrastspanung zu drehen, aber bitte in die richtige Richtung, welche das auch sein mag. Im Übrigen kommen mir -5V komisch vor.


Normale Displays ohen Hintergrundbeleuchtung haben einen Kontrastspannungsbereich von 0-5V. Es gibt aber auch hintergrundbeleuchtete Displays. Die brauchen einfach -5V bis +5V. Wenn man die mit 0-5V ansteuert ist nichts als die oben beschriebenen schwarzen Balken zu sehen. Ausserdem ist beim Kontrast auf eine Stabile Spannung an Pin 3 zu achten. So ein PWM-Signal mit einfacher RC-Beschaltung packt das nicht um den Kontrast zu regulieren. Der wird sich auf unterhalb von 0,6V einregulieren wegen der P-N-Sperrspannung (unbel. LCD).

So Long. Wolfgang

tobimc
30.12.2004, 10:01
HI

Hm.
Aber das Hauptproblem liegt immernoch an der Initialisierung, wenn auch
der Kontrast im Moment ein bisschen überwiegt.
Wenn das ein HD44780 IST oder ein KOMPATIBLER, dann kannst du auch
irgendeine Standardroutine nehmen. Die müsste in deinem C schon drin sein? oder? Schau' mal nach. Das spart nämlich diese initialisiererei...

Also ich bin ja BASCOMmer, und da gibts schon recht gute LCD-Routinen.
Die funktionieren auch mit den meisten KS... Controllern.

Was hast du für einen µC??

Liebe Grüße, Tobi

bhm
30.12.2004, 19:20
Normale Displays ohen Hintergrundbeleuchtung haben einen Kontrastspannungsbereich von 0-5V. Es gibt aber auch hintergrundbeleuchtete Displays.
...
Der wird sich auf unterhalb von 0,6V einregulieren wegen der P-N-Sperrspannung (unbel. LCD).

dumme Frage: Was hat die Hintergrundbeleuchtung mit dem Kontrast zu tun? Ich hab LCD hier (AC-204A), das hat eine LED-Hintergrundbeleuchtung, die durch eine Spannung von 5V eingeschaltet wird. Wenn ich das recht verstehe, geht die direkt (über Vorwiderstand) an die LEDs. Dann braucht das Ding 5V für die Elektronik und 0-5V für den Kontrast, das wird die Versorgungsspannung für das eigentliche LCD sein.
So gesehen, denke ich, dass LCD und Hintergrundbeleuchtung getrennte Dinge sind. Die Kontrastspannung kann natürlich trotzdem +/-5V sein, und evtl wird daraus die LED-Versorgung erzeugt.
:-( sigh .. ich weis einfach zu wenig ...
ciao .. bernd

BlueNature
30.12.2004, 19:51
Hallo bhm!

Das mit der LED-Versorgung und der Kontrastspannung Vo an Pin 3 sind zwei völlig verschiedene Dinge. Die LED ist einfach nur auf Pin 15 und 16 herausgeführt und nicht potentialgebunden ausser du verbindest Kontakte. Das mit der Kontrastspannung von -5V oder 0V rührt daher da es verschiedene Techniken sind. Die einen Displays ohne Hintergrundbeleuchtung reflektieren das Licht wogegen die beleuchteten das Licht aussenden und über das LCD sperren oder freigeben zu den entsprechenden Zeichen.

Nochwas. Such dir das Datenblatt von genau deinem LCD und mach dich dort schlau. Da steht es immer mit der Kontrastspannung. Die kann auch einmal völlig anders sein. Ich gehe von den üblichen LCD's aus die man im Laden kauft, nicht aus irgend welchen Geräten oder Restposten verwendet wurden. Die können ganz andere Spezifikationen haben, da ist dann dein Geschick gefragt das zum Laufen zu bringen.

Grüsse Wolfgang

Stern_76
01.01.2005, 17:58
Hallo Leute,
das Problem hat sich erledigt. Ich glaube, daß die Ursache ein defekte Pin auf dem Mikrocontroller war... :-k ...Wie auch immer!...
Auf jeden Fall, jetzt benutze ich andere Pins auf dem µC für die LCD Steuerung und das Display läuft einwandfrei....
Danke für eure Anregungen.
Grüße
Stern_76