Hallo!! Tut mir leid, das ich euch mit dem schon 1000fach durchdiskutierten Problem belästige, aber in den anderen Beiträgen habe ich nichts gefunden: Folgendes Problem, Ich verwende einen ATmega8, daran habe ich wie im Tutorial beschrieben den LCD angeschlossen, ausser an die D-Port-Pins an die B-Port-Pins. Die Software habe ich auch vom Tutorial genommen, habe aber alle PORTD durch PORTBs und alle DDRD durch DDRBs ersetzt. Wenn ich dem Ganzen nun Saft gebe, dann habe ich in der ersten Zeile einen schwarzen Balken in der zweiten nicht (verwende ein 2*20 er LCD welcher HD44..... kompatibel ist). Das deutet darauf hin, dass der LCD nicht initialisiert wird. Ich habe bereits alle Leitungen geprüft (wenn ihr meint, es liegt daran, dann mach ich das nochmals). Könnte es auch an der Software liegen? Sind die Delays zu kurz? Ich habe keinen externen Oszillator angehängt, habe auch nichts an den Bitsgeändert die für das Taktsignal verantwortlich sind, dann sollte doch der Interne Takt von 1MHz eingestellt sein?? Könnte mir jemand helfen?? Danke!!
Hallo Ste! Wie hast du den pin zur Kontrast einstellung beschaltet? (ist meistens pin 3) Dort kann man eine Spannung zwischen 0...5V reinlassen. So viel ich weiss, ist 0V am dunkelsten(am besten lesbar). MFG Nik
Hallo! Das ist es nicht, habe es an einem Poti, wie im Tutorial. Habe dort drei Einstellungen getestet, einmal auf Masse dann mal etwa in der Mitte und dann noch auf 5V, danke trotzdem! Hat jemand eine LCD-Ansteuerroutine für einen Atmega mit 1 MHz takt, die er mir schicken kann, um auszuschliessen, dass es an der Software liegt?? Wäre genial!! Danke
hi, hatte das gleiche problem wie du. Ich kann dir sagen dass es an der Software liegt. Wenn die erste zeile komplett mit schwarzen Balkena ausgefüllt ist dann funktioniert dein Display. Schau genau ob du nicht etwas vergessen hast oder eventuell irgendwelche pins verwechselt hast. Gruss Georg.
An was hat es bei dir gelegen? Ich habe die Software vom Tutorial verwendet, die sollte ja schon funzen, bräuchte es noch irgendwelche Pullups? Kannst du mir deine Software mal schicken, dann könnte ich das testen. Gruss
Mir ist noch etwas in den Sinn gekommen, die Pins vom Port B sind können ja auch andere Funktionen einnehmen als nur I/O-Pin zu sein. Auf was sind die Standartmössig eingerichtet? könnte es sein, dass es daran liegt, dass der I/O gar nicht aktiviert ist? Wie kann ich die I/O-Pins des B-Ports aktivieren? Ja ich weiss ich könnte im Datenblatt nachsehen, aber ich habe das bereits nur verstehe ich nicht ganz wie das geht, will ja meinen AtMega8 nicht kaputten! Danke für Hilfe
Hallo, hast du im Datenrichtungsregister DDRB den Port auf Ausgang gelegt? Hast du den Stackpointer richtig initialisiert? Beim Atmega8 benötigt dieser im Gegensatz zum 2333 im Beispiel zwei bytes! Gruß Andreas
Habe den Bock wie so oft durch Zufall gefunden. Als ich den Atmega zum ersten Mal programmiert habe, habe ich vergessen die Ports im Programm zu ändern, das ist mir auch schnell aufgefallen und habe das geändert. Beim zweiten und dritten und vierten.. etc mal programmieren habe ich immer vergessen den Chip vorher zu löschen, sowieso komisch, dass dann das programm nicht reklamiert! Tja, hetzt funzts
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.