Hi, ich versuche seit Stunden ein 1*16 Zeichen LCD-Display mit einem ATtiny26 anzusteuern. Ich habe die 8-Bit Datenletiung des LCDs an PORTA gelegt und die Steuerletungen E und RS in PORTB untergebracht. R/W habe ich einfach an Masse gelegt, will nur schreiben. der µC läuft intern 1MHz. Ich konnte das Ding mit meinem Assembler-Code einfach nicht zum laufen bringen, habe die Pausen mit NOPs verändert. Geht nix??? Weis jemand warum? Danke für deine mühe im vorraus. Gruß Timo Gessner
Hallo Timo, ich nehme an es handelt sich um ein HD44780 - kompatibles Modell ? Wenn das stimmt sind deine NOP - Verzögerungen einfach zu kurz. Schau einfach mal in das Datenblatt und du stelltst fest nach dem Reset müssen 4 ms bis zum ersten Befehl vergehen.
Ah, 1MHz = 1µs für ein Befehl, dann muss ich wohl Schleifen einbauen, um diese Zeitspanne zu bekommen. Es gibt aber nur minimalwerte, keine Maximalwerte, oder?
Ja, genau es gibt nur Minimalwerte. Die Verzögerung kannst du über SChleifen oder eleganter Interruptgesteuert machen. Das Ansteuern eines HD44780 ist ja sowas wie ein "Standard - Einsteiger Projekt", da findest du hier im Forum oder sonst wo im WWW, Programme aus denen du dir Anregungen holen kannst.
Das funktioniert. Es ist ein 16 Zeichen Display, aber die ersten 8 Zeichen werden nur aktiviert, warum nicht die anderen 8?
Wie ich aus dem Internet entnehmen konnte, besteht mein Display aus 2*8 Zeichen. Die ersten 8 Zeichen funktionieren bei mir und die letzten 8 nicht. Im Internet stand dieses: 00-07 für die linke Hälfte und 40-47 für die rechte Hälfte. Hilft mir das?
Wie wär's mit einem Datasheet vom Display, nicht von irgendeinem sondern von exakt diesem?
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.