PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATMega 2560 startet gelegentlich neu



chris@franke
15.02.2010, 21:52
Hallo,
ich habe jetzt aktuell das Problem, das mein 2560 einige Sekunden nach dem Anlauf wieder neustartet (Vorher scheint alles normal, ich erhalte auch einige Ausgaben über den USART). Das passiert aber nicht immer, nach jedem 3. - 4. Neustart läuft das Programm unter identischen Bedingungen ohne Probleme. Wie komm ich nun dahinter, was das ganze auslöst? Bin da gerade ein wenig ratlos, evtl. hat ja jemand einen Tipp für mich. Falls es releavant ist, ich programmiere in C mit dem AVR-Studio. Achja, weiterhin kommt es zwischenzeitig auch vor dass ich über den USART in einer Endlosschleife totalen Käse gesendet bekomme, darunter auch Textfragmente von bereits vergangenen Übertragungen... Da vermute ich dann, dass der Controller endlos neu anläuft.
Gruß,
Chris

Jaecko
15.02.2010, 21:55
Hilfreich wäre hier z.B. mal der Quellcode bzw. das AVR-Studio-Projekt sowie die Beschaltung (Schaltplan); u.a. was Abblockkondensatoren betrifft oder auch wie der Reset-Pin beschaltet ist.

Besserwessi
15.02.2010, 23:44
Die Kandidaten für einen Neustart sind:
1) Störungen auf die Resetleitung (ggf. extra Pullup oder Kondensator als Abhilfe)
2) Spannungseinbrüche oder Störungen ( alle GND, VCC angeschlossen ? , Kondensatoren OK ?)
3) Watchdogreset (ggf. in den Fuses auschalten)
4) Stack Überlauf (eher in ASM, selten in C)

5) Compiler Problem mit mehr als 64K bzw. 128 K -> solte vor allem Fehler bei Textkonstanten geben, kaum einen Neustart.


Was genau den Reset ausgelöst hat kann Steht in einem Register.
Weil es ja manchmal geht, sollte es eher eine elektrische Störung sein.

Rofo88
16.02.2010, 05:10
Schaue mal in den MCUSR-Register nach einem reset, da steht dann drin woher er gekommen ist.