...hier wird Dir keiner helfen können, wenn Du nicht auch den zugehörigen Code postest.
Hallo,
ich habe ein Reichelt LCD 4x40 Zeichen (EA W404B-NLW, Electronic Assembly) an einen Atmega168 angeschlossen. Die restliche Schaltung ausser dem Display funktioniert einwandfrei. Schließe ich aber das Display an, bekomme ich nichts ausser einem Balken, der sich in der kompletten 2. Zeile von unten nach oben bewegt.
Programmiert hab ich das ganze in Bascom, in einer Schleife. Nehm ich die Schleife raus, passiert gar nichts, mit der Schleife bewegt sich der Balken. Innerhalb der Schleife habe ich eine Pause, wenn ich da die Zeit variiere, bewegt sich der Balken schneller oder langsamer.
Das Display wird mit 4-Bit angesteuert, ohne RW. Die Leitungen hab ich alle mehrfach durchgemessen, da ist alles in Ordnung.
Hat sowas schonmal jemand bei einem Reichelt-Display beobachtet? Bin drauf und dran das Ding wieder zurückzuschicken, aber vielleicht hat hier ja jemand noch einen Tip..
...hier wird Dir keiner helfen können, wenn Du nicht auch den zugehörigen Code postest.
Kann ich machen, ist nichts besonderes:
Code:$regfile = "m168def.dat" $crystal = 16000000 $baud = 9600 Dim ___lcdno As Byte Config Lcd = 40 * 4 Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.0 , Db6 = Portd.7 , Db7 = Portd.6 , E = Portb.3 , E2 = Portc.3 , Rs = Portc.2 ___lcdno = 0 Initlcd Cls Cursor Off ___lcdno = 1 Initlcd Cls Cursor Off Do ___lcdno = 0 Locate 1 , 1 Lcd "Zeile 1" Locate 2 , 1 Lcd "Zeile 2" ___lcdno = 1 Locate 1 , 1 Lcd "Zeile 3" Locate 2 , 1 Lcd "Zeile 4" 'Waitms 500 Loop
Tjoo, Code sieht gut aus....Display hat laut Dbl. auch zwei Controller...
Vielleicht werden einzelne Pins doppelt für JTAG/UART genutzt, daher würde vielleicht mal versuchsweise die Steuer- und Datenleitungen zusammen an einen Port hängen.
BASCOM kann ich nicht, aber die gängisten Fehler da sind R/W nicht auf GND oder der Code ist nur für aktiven R/W geeignet.
Etwas ungewöhnlich ist deine Data-Pin - Port-Pin Zuteilung.
Hallo,
probier mal diese Zeile zu ändern in:
Config Lcd = 40 * 4, CHIPSET=KS077
evtl. hilfts was, da es keinen orig. HD44780 drauf hat
Hi,
also RW und die restlichen Datalines sind auf GND. Der Code ist definitv für eine RW-lose Ansteuerung geeignet, da ich ein anderes Display mit diesem Code erfolgreich ansteuere (ohne RW).
Die Pinbelegung hat sich so ergeben, ist ein selbstgebautes Board. Ein zweites Display, das 4x27-Zeichen Ding von Pollin funktioniert an dem Board aber. Führe die Kontakte mit einer 16-poligen Wannenbuchse raus.
Ich hab das Board gerade noch zum umtauschen weggebracht (ist ein Projekt für meine Firma), wenn es morgen noch da ist, werd ich das mit der Chipsatzdefinition von linux_80 mal ausprobieren. Danke für den Tip.
JTAG hat der Atmega168 glaub ich gar nicht, da ich alle benutzten Pins aber mit einer LED kurz durchgeleuchtet hab und das andere Display funktioniert, denke ich dass da alles in Ordnung ist.
Reichelt hat das Display bekommen und bestätigt, dass es defekt ist, sie können aber nicht feststellen woran es hakt. Deshalb wird das Ding jetzt zum Hersteller geschickt und mein Abschlussprojekt liegt solange brach
War am Freitag kurz im Betrieb und hab gesehen, dass das reparierte Display zurückgekommen ist. Kann das also am Montag dann hoffentlich zum Leben erwecken \/
Edit: Die Reparatur hat wohl nicht geklappt, haben das Display nochmal eingeschickt und jetzt hab ich ein brandneues hier liegen. Das probier ich dann nachher direkt mal aus
Keine Ahnung was beim alten kaputt war, das neue funktioniert wunderbar
Lesezeichen