Forum: Mikrocontroller und Digitale Elektronik MCU (spez. MSP430) - Befehl zum Reset des Controllers?


von Gernod (Gast)


Lesenswert?

Hallo zusammen!

Ich habe mal eine Frage zum MSP430 - gibt es irgendeine Art Befehl, dass 
der uP sich eigenständig resettet?

Quasi aus einem Menü heraus einen Punkt "Reset" und der läd komplett 
neu?


Oder wenn kein spezieller Befehl - gibt es eine einfach Möglichkeit, wie 
z.b. den Watchdog läuten lassen oder ähnliches? Befehl wäre mir 
lieber...

Danke!

von nicht_eingeloggt (Gast)


Lesenswert?

Am einfachsten geht es tatsächlich mit dem Watchdog. Lass den uC 
kontrolliert in eine While-Schleife laufen:
1
void MSP_reset (void)
2
while (1)
3
{
4
    WDTCTL = WDT_ARST_1000; //reset after 1s
5
}

das sollte klappen.

VG,
mui

von Sebastian (Gast)


Lesenswert?

Man kann den Watchdog einfach auf einen ungültigen Wert setzen. Dann 
sollte der Reset unmittelbar erfolgen. Einige Beispielprogramme benutzen 
"WDTCTL = 0xDEAD". ;)

von Gernod (Gast)


Lesenswert?

Sebastian schrieb:
> Einige Beispielprogramme benutzen
> "WDTCTL = 0xDEAD". ;)

Kein Scherz?

von Sebastian (Gast)


Lesenswert?

Denke nicht. Es gibt genügend Codeschnipsel im Netz, die offensichtlich 
damit funktionieren.

von nicht_eingeloggt (Gast)


Lesenswert?

Dann muss aber schon darauf geachtet werden, das bei dieser 
Wertekonstellation das WD-Passwort gesetzt wird. Aber wenn das wirklich 
so funktioniert wär das ne lustige Sache :-)

von Jörg S. (joerg-s)


Lesenswert?

nicht_eingeloggt schrieb:
> Dann muss aber schon darauf geachtet werden, das bei dieser
> Wertekonstellation das WD-Passwort gesetzt wird.
Eben nicht. Darum geht es ja. Der MSP macht reset wenn das falsche 
Passwort geschrieben wird.

WDTPW:
Watchdog timer password. Always read as 069h. Must be written as 05Ah, 
or a PUC will be generated.

von nicht_eingeloggt (Gast)


Lesenswert?

Ach guck an, wieder was gelernt...

von Laila (Gast)


Lesenswert?

schön für dich ;-)

von Gernod (Gast)


Lesenswert?

Also nur mal zur Info:

Der 0xDEAD funktioniert einwandfrei und sofort!

Danke!

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
Noch kein Account? Hier anmelden.