www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD ansteuern klappt nur nach Flashen


Autor: Schimmelhirn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht nach einem Resetpin-Problem aus...

Autor: Schimmelhirn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Andreas Kramer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Schimmelhirn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.