Hallo zusammen, ich möchte gern einen Software Reset mit einem ATXmega128a1 ausführen. Laut Datenblatt muss man das Register RST.CTRL auf 0x01 setzen und dann abwarten. Das ganze funktioniert aber nicht. Kann mir da jemand helfen? Viele Dank
Beim ATMega mach ich das so, dass ich den Watchdog starte und das Ding in die Endlosschleife schicke ... sollte beim XMega auch gehen :)
Hallo, ja so geht es auch. Ich würde es aber gerne sauber lösen, da es sehr Zeitkritisch ist.
Habe den Beitrag gefunden da ich das gleiche Problem hatte. Ja ich weiß, dass der Beitrag nicht aktuell ist. Trotzdem möchte ich für nachfolgende Sucher die Lösung (für mich) geben: Manual (8077H- AVR-12/09) S. 109 sagt: >>When this bit is set, a Software reset will occur. The bit is cleared when a reset is issued. This bit is protected by the Configuration Change Protection, for details refer to Section 3.12 ”Configuration Change Protection” on page 12.<< manual S. 12: lest selbst! ;-) C-Code für den Software-Reset: // :::::::::::::::::::::::::::::::::::::::::::::::: // CCP: Configuration Change Protection // :::::::::::::::::::::::::::::::::::::::::::::::: //for general: ref manual p. 12 (3.12) //ref manual p. 13 (3.14.1) //CCP - Configuration Change Protection Register //IOREG: Protected IO register // //enabling to write into protectet area CCP = CCP_IOREG_gc; //All interrupts are ignored during the next 4 CPU //instruction cycles from now //CTRL bit is protected by Configuration Change Protection //Software-Reset ausführen (bit0 setzen) //see manual p. 109 (9.5.2: CTRL - Reset Control Register) RST.CTRL = RST_SWRST_bm; Viel Erfolg!
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.