Hallo Leute, habe ein Problem mit meinen LCD. LCD ist das hier: http://www.allspectrum.com/store/product_info.php?products_id=967&osCsid=e896dbea4c1a8dedbdcb89230a7bcc5a Angeschlossen habe ich es wie folgt: http://www.roboternetz.de/wissen/index.php/Bascom_und_LCD%27s#LCD_Display Das Poti für Kontrast funktioniert auch, denn die Schwarzen Kästchen kann ich auch sehen. Hier mein Programm in Bascom: $regfile = "m16def.dat" $crystal = 16000000 $baud = 19200 $hwstack = 100 $swstack = 100 $framesize = 100 Config Portd = Output Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 Config Lcd = 16 * 2 'configure lcd screen Config Lcdbus = 4 initlcd Cls Do Toggle Portd.6 Locate 1 , 1 Lcd "test" Wait 1 Loop End Mein Problem ist, dass auf den Display nichts angezeigt wird. Verkabelung ist in Ordnung. Habe es auch schon mit einen anderen Display ausprobiert (TC1602A von Pollin). Genau das selbe Problem. Sehe nur die Schwarzen Balken sonst nichts. Könnt ihr mir vll weiter helfen? Hab auch schon Initlcd ausprobiert, funktioniert auch nicht. Danke schonmal für eure Antworten. Bye
LCD Problem Nr. 200768933 Such hier im Forum. Da wirst du bestimmt was finden. Oder prüfe dein Verkabelung. Das könnte schneller gehen.
Hi, das Forum habe ich bereits durch. Hab keine Infos gefunden die mir weiter helfen. Und wie bereits erwähnt, Verkabelung ist auch in Ordnung. Bye
>Hi, das Forum habe ich bereits durch. Hab keine Infos gefunden die mir >weiter helfen. >Und wie bereits erwähnt, Verkabelung ist auch in Ordnung. Bye Dann sind deine LCDs wohl defekt ;) Kann ich die haben?
Hallo, wie ist der Pin 5 des Displays (R/W) angeschlossen? Dieser muss mit GND (0V) verbunden sein, sonst geht das Display nicht (richtig). Die Kommandos "Config Lcdbus = 4" sowie "Config Portd = Output" sind für die LCD-Initialisierung im Pin-Modus nicht erforderlich; beides wird durch den Befehl "Config Lcdpin = ..." erledigt. Zum Testen einfach mal auskommentieren. Siehe dazu auch die LCD-Beispielprogramme in der BASCOM-Hilfe.
Hi, rw liegt auf Ground. D0-D3 lag auf auf 0v. Hab ihn jetzt mal auf high gelegt und schon verschwinden die schwarzen Kästchen in der 1. Zeile. (initialiesierung hat geklappt oder?) leider zeigt es mir danach auch nichts an. Am kontrastpoti hab ich auch gedreht. Leider keine Veränderung. Hab auch schon vor und nach der initlcd ein wait von 2 eingefügt um sie zu verlangsamen. Auch ohne Erfolg. Sonst noch eine Idee? Bye
Sind nicht D0 bis D3 die Datenleitungen ???? Was haben die auf 5V oder GND zu suchen ? Oder Funktioniert das LCD anders ?
Im 4-Bit-Modus werden D0-D3 nicht benutzt; ich habe sie bisher immer offen gelassen. Genutzt werden D4-D7. (Mein letzter Fehler war, D4-D7 in der falschen Reihenfolge anzuschließen...)
Der Link ist übrigens ein 20x2; ist es wirklich die richtige Beschreibung?
Hi, ja das ist der richtige Link. Habe nur das 16x2 noch drin weil ich das Problem auch mit den Display von pollin habe. Wie bereits gesagt im 4 Bit Modus sind d0-d3 nicht belegt. Einer schreibt man soll sie in der Luft lasssen, ein anderer auf Ground und manchmal soll man sie auf 5v hängen... Was ist den nun richtig? Bye
Nachdem der LCD-Controller D0 bis D3 gar nicht auswertet, würde ich VERMUTEN, es ist egal. Probiert habe ich es bisher nur, sie gar nicht anzuschließen. Das hat bei mir nie zu Problemen geführt; getestet mit diversen LCD-Typen und immer 4-Bit-Modus und R/W fest auf GND.
Klaus Wachtler schrieb: > (Mein letzter Fehler war, D4-D7 in der falschen Reihenfolge > anzuschließen...) Etiam tu! Und ich dachte, nur ich könne so blöd sein, dass mir das passiert und ich es eine halbe Stunde lang nicht bemerke :-)
ich habe etwa doppelt so lange gebraucht, daß ist der Unterschied zwischen doof und richtig doof.
Karl heinz Buchegger schrieb:
> Und wenn schon, dann auf GND
(Dann aber natürlich dazu sagen, daß das nur mit R/W auf GND gut geht.
Wenn das nicht sicher ist, lieber D0 bis D3 über einen Widerstand
auf einen Pegel legen.)
Ok. Aber warum funktioniert dann das initialisieren wenn ich sie auf 5v lege? ... Leider klappt die Ausgabe noch immer nicht. Vll Fehler von bascom??? Bye
Oder könnte es auch an der Frequenz vom Quarz liegen? Momentan betreibe ich ja den ic mit 16 MHz. Bye
Stefan Voll schrieb: > Ok. Aber warum funktioniert dann das initialisieren wenn ich sie auf 5v > lege? Offensichtlich hat es eh nicht geklappt. Sonst würde das Display ja was anzeigen. > Vll Fehler von > bascom??? Bye Möglich. Kontrolliere trotzdem zum 20-mal die Verdrahtung. Hast du am Display auch wirklich D4-D7 Sind die am Controller auch wirklich auf d0 bis d3 Ist die Reihenfolge richtig? D4 muss an d0, D5 an d1 etc. Sind die Steuerleitungen auch richtig? Haben alle Leitungen Durchgang (Mit Durchgangsprüfer kontrollieren. Bei einer Messspitze an der LCD-Kabel-Kontaktlötstelle und der anderen am µC Pin muss es piepsen) Ich weiß, du hast das alles schon kontrolliert. Aber kontrolliere es nocheinmal.
Ok check ich heute Abend gleich nochmal alles durch. An den 16 Mhz kann es nicht liegen oder? dass Vll das Initialisieren zu schnell abläuft? Sollte ich es mal mit den Internen Takt probieren? bye
Also hab jetzt das 20x2 Display hinbekommen. Verdrahtung hat gepasst. War am Code gelegen: Hier der Neue Code: $regfile = "m16def.dat" $crystal = 16000000 '$baud = 19200 $hwstack = 100 $swstack = 100 $framesize = 100 Config Portd = Output Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 'Wait 2 Config Lcd = 20 * 2 'configure lcd screen Config Lcdbus = 4 'Wait 2 Initlcd 'Wait 2 Cls Do Toggle Portd.6 Locate 1 , 1 Lcd "test" Wait 1 Locate 2 , 1 Lcd "hallo" Wait 1 Cursor off blink Loop End Nun habe ich das 16x2 Display von Pollin angeschlossen, mit der selben verdrahtung aber dieses läuft nicht! Es scheint sich nicht zu initialisieren. (Die schwarzen Balken gehen nicht weg) Woran könnte dies noch liegen? bye
Oh und eine Frage hab ich auch noch: Was ist der Unterschied zwischen "FSTN" und "STN" Displays? Bye
und wo ist jetzt der prinzipielle Unterschied zu oben, außer 16*2 bzw. 20*2 und daß $baud auskommentiert ist?
Hallo Stefan, prgramm funktioniert mit internen oder mit externen takt ohne probleme. Blinkt die led? kontrolliere mit den ozi oder mit einer led alle datenleitungen. mfg orfix
>> und wo ist jetzt der prinzipielle Unterschied zu oben, >> außer 16*2 bzw. 20*2 und daß $baud auskommentiert ist? Sobald Bascom die $Baud Deklaration findet, wird die serielle Schnittstelle initialisiert, beim ATM16 durch Setzen von RXEN und TXEN in UCSRB. Damit stehen die Pins PD0 und PD1 nicht mehr zur normalen Verfügung. Wenn man also die Serielle nicht braucht, die entsprechenden Pins dagegen schon, dann kein $Baud reinschreiben. :D
@ MWS Ja genau richtig. Das habe ich nicht gewusst. Hab mir grad bei Pollin noch ein 16x2 LCD bestellt. Vll ist das alte ja Kaputt weil das 20x2 funktioniert ja! bye
MWS schrieb: > ... > Sobald Bascom die $Baud Deklaration findet, wird die serielle > Schnittstelle initialisiert, beim ATM16 durch Setzen von RXEN und TXEN > in UCSRB. > > Damit stehen die Pins PD0 und PD1 nicht mehr zur normalen Verfügung. > Wenn man also die Serielle nicht braucht, die entsprechenden Pins > dagegen schon, dann kein $Baud reinschreiben. :D BASIC ist ja noch kranker, als ich dachte.
>> BASIC ist ja noch kranker, als ich dachte.
Was hat das denn mit Basic zu tun ? Das ist eine Bascom Eigenheit, und
wenn man die nicht kennt, geht's halt nicht.
Hab' mir sagen lassen, daß es in anderen Dialekten auch nicht klappt,
wenn man die nicht richtig verwendet.
> Hat keiner eine Antwort? Doch, Google z.B.: http://www.itwissen.info/definition/lexikon/film-super-twisted-nematic-FSTN-FSTN-Technologie.html Hier sind noch mehr Antworten: http://www.google.de/search?q=fstn+stn&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a ...
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.