Forum: Mikrocontroller und Digitale Elektronik System Reset STM32


von Ste (Gast)


Lesenswert?

Hallo liebes Forum,

ich programmieren einen STM32F303.
Bei einer bestimmten Aktion soll ein Reset ausgeführt werden. Dafür 
verwende ich die folgende Funktion aus der Library:
NVIC_SystemReset();
Das hat schon mal wunderbar funktioniert, allerdings klappt es auf 
einmal nicht mehr. Ich weiß leider nicht, was ich "anders" gemacht 
habe...
Zum weiteren Testen habe ich die folgende Zeile einfach mal direkt 
eingegeben: SCB->AIRCR  = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | 
SCB_AIRCR_SYSRESETREQ_Msk);
Beim Debuggen habe ich festgestellt, dass nach dieser Zeile das Programm 
normal weiter ausgeführt hat (also ohne Reset)...

Übrigens: Der Watchdog funktioniert auch nicht! Habe diesen zum Test 
ausprobiert, aber es erfolgt ebenso kein Reset!

Könnt ihr mir Hinweise/Tipps geben, was ich noch berücksichtigen muss??

Danke im Voraus!

von Jim M. (turboj)


Lesenswert?

Ste schrieb:
> Beim Debuggen habe ich festgestellt, dass nach dieser Zeile das Programm
> normal weiter ausgeführt hat (also ohne Reset)...

Mal den Disassembler bemüht? Eventuell ist ja was bei Kompilieren oder 
Flashen schief gegangen und ein älterer Software Stand auf dem µC.

von Ohman (Gast)


Lesenswert?

Ich mach dass immer so über den Watchdog:
1
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
2
IWDG_SetPrescaler(IWDG_Prescaler_128);
3
IWDG_SetReload(0x140);
4
IWDG_ReloadCounter();
5
IWDG_Enable();

von Ste (Gast)


Lesenswert?

Ohman schrieb:
> Ich mach dass immer so über den Watchdog:
> IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
> IWDG_SetPrescaler(IWDG_Prescaler_128);
> IWDG_SetReload(0x140);
> IWDG_ReloadCounter();
> IWDG_Enable();

Nachdem die Funktion NVIC_SystemReset(); nicht mehr funktioniert hat, 
habe ich es mit dem Watchdog probiert (exakt der gleiche Code, wie von 
dir eben geschrieben).
Aber es will einfach kein Reset erfolgen.

Es hat doch schon mal funktioniert, aber ich habe mittlerweile so viel 
Code hinzugefügt, dass ich leider nicht mehr nachvollziehen kann, was 
den uC "stört"....

von Soft Lehrer (Gast)


Lesenswert?

Ste schrieb:
> Bei einer bestimmten Aktion soll ein Reset ausgeführt werden.

Eine Software die mit ihren "Notfällen" nicht umgehen kann
die taugt nichts!

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.