Hallo zusammen, ich hätt da gern mal ein Problem: Ich habe an einen ATmega16 ein Display im 4Bit-Modus. Das ganze hängt an PORTB(0-3) für die 4-Datenbits und an PORTD(0-2) für RS/RW/E. Programmer ist ein USB ISP. Mein Code initialisert zunächst das LCD und gibt dann auf 2 Zeilen Text aus. Bisher klappt alles wunderbar, solange ich jedesmal neu flashe... Sobald ich beim µC einen Spannungsreset mache, wird nur noch das Display initialisiert, aber keine Zeichen mehr ausgegeben. Flashe ich denselben Code neu, macht das LCD wieder was es soll... Hat da wer von euch nen Verdacht? Danke schon mal für die Hilfe! Grüßle, Schimmelhirn
Danke für den Hinweis... Du hattest recht, es ist der Reset-Pin. Wenn der µC Spannung bekommt kommt das Programm wie gehabt nur bis zur Initialisierung und vegisst den Text auszugeben. Wenn ich danach den RST kurz nach GND ziehe läuft es wieder normal. Aber warum muss ich erst noch mal einen Reset machen? Eigentlich hätte ich mir vorgestellt, dass der µC nachdem er Spannung bekommt das ganze Programm durchläuft...
du gibts dem display nicht genug zeit sein eigenen power-on reset zu beenden. daher klappts wohl nur, wenn das display schon vor der init vom controller läuft. warte länger nach dem einschalten bevor du das display initialisiert.
Wie ist denn deine momentane Beschaltung ohne Schaltplan könnte man natürlich nur raten. Aber annsonnsten kann es sein das das Programm dem Display nicht genügend Zeit lässt um sich zu initallisieren und dann den Text auszugeben ? Wenn du Resettest bleibt das Display an der Versorgung und bekommt dann vieleicht schon initallisiert den Rest deiner Befehle mit. Ist allerdings nur eine Idee. Gruß Andreas
danke nochmal für die Anregungen. Ich hab mal um sicherzugehen das Display an eine andere Versorgung gehängt. Nun läuft es dann schon ne ganze Weile bevor ich den µC anschalte -> leider gleiches Ergebnis. Dann hab ich nach dem Initialisieren nen 100ms delay eingebaut -> immer noch selbes Ergebnis. Wenn die Beschaltung hilft: Der Reset-Pin hängt über 5,6kOhm Pull-Up an VCC und mit 150nF an GND. Wundert euch nicht über die Werte, ich hatte leider nix andres mehr im Haus ;) Aber gerade wo ich das schreibe hab ich nochmal nachgemessen - am Resetpin stehen nur 1,5V... so hab dann mal den ISP abgesteckt und siehe da es tut wie es soll! Hat mir der ISP irgendwie die Spannung geklaut...grr Danke noch mal an alle. Grüße, Schimmel
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.