Spontane Restes und "Hänger"??

Gast #808509
Lesenswert?
• ▲
▼
Hallo zusammen,
mein Programm hängt sich ab und zu auf, oder der Mega resetted einfach.

Wie kann man so etwas debuggen? Ich habe keine Idee, wie man sowas auf 
die Spur kommen kann.

Ein Timer lässt eine LED und gleichzeitig eine Dezimalstelle einer Zahl 
auf einem LCD blinken.
EIn Problem z.B. ist, dass die LED weiterhin blinkt, wohingegen die Zahl 
still steht. Der Timer scheint also weiter zu laufen... Das tritt halt 
aber auch ganz zufällig auf.

Ein zweiter Timer erledigt das Entprellen der Tasten. Manchmal werden 
keine Tastendrücke mehr erkannt, der Timer, der die LED blinken lässt 
läuft aber weiter??

Wodurch kann ich denn einen Reset erzeugen? Watchdog hab ich nicht, 
BRownOut ist aus. Das einzige was mir noch einfällt ist, dass er aus 
Versehen an die Adresse 0 springt...

Gruß
Henrik
#808838
Lesenswert?
• ▲
▼
Henrik wrote:
> mein Programm hängt sich ab und zu auf, oder der Mega resetted einfach.

Das erste kann sein, das 2. solltest Du erstmal prüfen.

D.h. Du must in Deinem Programm eine Routine einfügen, die die 
Resetquellenbits ausliest, rücksetzt und anzeigt.

Wenn außer nach dem Einschalten kein Bit gesetzt ist, dann war das kein 
Reset, sondern Dein Programm ist in den Wald gesprungen und irgendwie 
wieder in den Resetvektor gelaufen.


Da wird wohl ein Fehler in Deinem für uns unsichtbaren Programm sein.


Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren