Forum: Mikrocontroller und Digitale Elektronik lcd will nicht


von hesham (Gast)


Lesenswert?

hallo
kann man lcd mit 4,5 volt betreiben oder MUSS 5 volt sein
in datenblatt steht von 4,5 bis 5 volt
danke

von sammy (Gast)


Lesenswert?

wenn im Datenblatt steht, das es mit 4,5V geht, dann wird es wohl mit
4,5V, warum wuerde das da sonst drin stehen?

von hesham (Gast)


Lesenswert?

also
so habe ich den lcd beschaltet
Db4 -> Portc.3
Db5 -> Portc.2
Db6 -> Portc.1
Db7 -> Portc.0
E ->   Portd.6
Rs ->  Portd.5

Db0 bis Db3 auf masse
pin3(LCD) und pin5(LCD)auf masse
pin1 auf masse und pin2 auf 4,5 volt

und mit dem programm

im A As Byte
$regfile = "m16def.dat"
$crystal = 4000000
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 ,
Db7 = Portc.0 , E = Portd.6 , Rs = Portd.5
A = 55
Upperline
Lcd "HALLO"
Wait 1
Lowerline
Wait 1
Lcd Hex(a)
End

getestet
aber es kommt gar nicht warum?
am anfang habe ich pin1(lcd)auf plus und pin2 auf minus
ist der LCD kapput?

wie kann ich wissen ob der lcd in ordnung ist?
danke
hes.

von Wolfram Hildebrandt (Gast)


Lesenswert?

wie siehts mit dem Kontrast aus?
Kontrast zu niedrig eingestellt?

von hesham (Gast)


Lesenswert?

>>wie siehts mit dem Kontrast aus?
alles probiert einmal auf masse und einmal auf 4,5 volt
aber kam leider nix

von Chris (Gast)


Lesenswert?

Hallo ,

ist da in dem kleinen Programm eine Initialisierung für das LCD
enthalten? Die ist nämlich auch noch nötig.

Gruß

von hesham (Gast)


Lesenswert?

nein,wie macht man das?
ich habe den lcd an atmega16 angeschlossen
und für die lcd  steht lcd adresse c000
und für rs adresse 8000
ich möchte auch wissen ob der lcd kaputt ist(test)?

von Holger (Gast)


Lesenswert?

Ich hab mich jetzt gerade erst mit LCD's beschäftigt und lange
gebraucht, bis alles funktioniert hab. Mit C komme ich noch nicht klar
aber im Assembler hatte ich folgende Fehler:

1. Die Initialisierungssequenzen müssen exakt eingehalten werden
2. Ganz wichtig ! egal was man macht (Daten o. Befehle senden oder das
Busy Flag abfragen) geht nur, wenn auch ein Enable Impuls an das LCD
gesendet wird.

Vielleicht helfen diese Hinweise weiter.

Gruss Holger

von hesham (Gast)


Lesenswert?

hallo Holger
deine Hinweise sind sehr gut und wichtig
ich wusste es nicht ,ich bin noch neu im uc
kannst du vieleicht mir ein programm geben für atmega16
als test mit den anschlüsse für lcd an uc
danke
hes.

von hesham (Gast)


Lesenswert?

also ich komme nicht weiter
woran kann es noch liegen?

von Pfi (Gast)


Lesenswert?

Also wenn du den LCD nur an die Spannungsversorgung hälst und den
Kontrast auf maximal stellst, dann sollten bei einem zweizeiligen LCD
zwi schwarze Balken aufleuchten. Wenn nicht ist etwas kaputt. Ich habe
auch schon ein LCD gesch***tet indem ich es aus Versehen verkehrt
angeschlossen habe.....

Gruss und ich hoffe natürlich, dass zwei schwarze Balken erscheinen

von hesham (Gast)


Lesenswert?

hallo Pfi
also ich habe es jetzt gerada probiert ,die hintergrundbeleuchtung
funktioniert sonst NICHTS ,d.h. außerdem sehe ich nichts(KEINE schwarze
Balken )
ist das einfach so das der lcd kaputt geht wenn man einen lcd verkehrt
anschliesst????

von Denis Gérard (Gast)


Lesenswert?

schau dir mal das datenblatt genau an, manche lcd wollen negative
spannung für den kontrast!!!
bevor die schwarzen balken nicht sichtbar werden brauchst nicht an den
programmen zu fummelen.

von Tim (Gast)


Lesenswert?

hab auch ein Problem mit meinen LCD. Ist ein 2x16, wenn ich einfach nur
die Spannung anlege habe ich aber nur einen schwarzen Balken, und das
bei zwei verschiedenen Displays die ich besitze. die sind doch wohl
nicht beide im A...? Oder ist deren standard-initialisierungsroutine
nur auf eine Zeile eingestellt? Das gibts laut Datenblatt naemlich
auch.(Function Set DB3)

TIM

von Divison (Gast)


Lesenswert?

Also bei meinem funktionierenden LCD gibt es vor der Initialisierung
auch nur einen schwarzen Balken. (obere Zeile beim 2x16 von
Displaytech) Das ist dann schon so in Ordnung. Nur wenn KEIN schwarzer
Balken zu sehen ist, dann brauch man auch nicht am Quellcode
rumbasteln.

Liebe Grüsse

Division

von stromi (Gast)


Lesenswert?

division hat wohl recht:
auch bei einem 2-zeiligen display kommt nur ein balken und zwar oben,
wenn man es mit ub versorgt.
wenn bei dir nicht's kommt ist die kontrastspannung nicht da, oder das
display defekt.
kontrastspannung kann zum test mal auf masse gelegt werden.
toi toi toi

von Holger (Gast)


Lesenswert?

Bitte schreib mal was alles auf dem display steht (Platine) wegen
Datenblatt. Kannst Du den Controller sehen? Steht ein typ drauf?
Oder hast Du das passende Datenblatt? Ich schau dann mal nach, was man
tun kann. Wenn meine gerade geschriebene Routine zu Deinem Display
passt, stell ich sie mal rein.

Gruss Holger

von Tim (Gast)


Lesenswert?

Kann man denn nun eigentlich direkt text an das display geben, nachdem
man es angeschaltet hat? Eogentlich macht es doch on selbst eine
Initialisierung! Im Datebblatt steht was von internal reset circuit
when powered on. Ist das der gleiche wie den den man dann von Hand
macht, oder muss man auf jeden fall eine Initialisierung per uC
durchfuehren?

TIM

von leo9 (Gast)


Lesenswert?

@Tim:
Wenn du Spannung anlegst und oben den (hell)schwarzen Balken siehst,
bedeutet das nur dass die Spannung richtig gepolt anliegt un der
Kontrast vernünftig spielt (also entweder Poti oder Gnd).
99% aller LCD-Displays müssen jetzt initialisiert werden. Die
prinzipiellen Routinen findest du im LCD Datenblatt. Die Abfolge ist
etwas "krank", es muß das Konfigbyte 3mal geschrieben werden mit
exakt definierten Pausen dazwischen. Danach noch die Konfig für
Busbreite, Zeilenanzahl, Cursor, Mode udgl. Danach sollte der obere
schwarze Balken verschwinden. eventuell tauchen jetzt zwei Balken (oben
und unten auf, aber nur bei extrem eingestellten Kontrast). Danach
kannst du Daten schicken.

Bei 4-Bit Betrieb ist auch zu beachten dass die Initialisierung noch im
8-Bit Mode erfolgt (also ein enable pro Byte), verwendest Du die 4-Bit
write Routinen (also zwei enable pro Byte) so werden dem Display statt
drei gleichen Initalisierungsbytes abwechselnd das Init-Byte und ein
Nullbyte geschickt und das kann so manches Display ins Datennirwana
schicken. Und selbst wenn das Display die falschen Initbytes ignoriert
hast du mit dem Konfigbyte für 4-Bit Mode ein enable zu viel geschickt
und ab dann sieht das Display immer die vermischten Nibbles aus dem
letzten und dem aktuellen Byte.

grüsse leo9

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
Noch kein Account? Hier anmelden.