STM32F051 SoftReset

Gast #5981836
Hallo,

mein STM32F051C6 landet im HardFault_Handler :-(

Das macht er nach Warmup ~ 20 Minuten. Nicht jede MCU (~ jede 20`te) und 
nicht jedesmal (~ jedes 10´te mal). Ursache muss ich noch ermitteln. 
Dringend brauche ich aber einen workaround. Idee: Etwas warten, dann 
einen Reset starten. Power up (nochmaliges Einschalten) löst das Problem 
fast immer, denke ein Reset ist meine Chance.

Frage: Welche Zeilen muss ich einfügen, um einen Reset ein zu leiten?
Sowas wie goto * ((void**)0) entsprechend an die MCU angepasst ?

Ich würde mich freuen, wenn ein Experte mit ein paar Tastenklicks 
weiterhelfen kann.

Grüße,

Uwe
Gast #5981845
Ein Sprung an den Programmanfang ist keineswegs mit einem Reset 
vergleichbar, weil dabei die gesamte Peripherie nicht zurückgesetzt 
wird.

Einen Hardware Reset kannst du mit der CMSIS Funktion NVIC_SystemReset() 
auslösen. Alternativ bietet sich die Nutzung eines Watchdog an, um 
Fehlfunktionen zu erkennen und automatisch einen Reset auszulösen.
Gast #5981909
Danke Stefanus,

für die schnelle Hilfe.

Den Reset habe ich ausprobiert, sieht schon besser aus. Ab und zu bleibt 
es aber hängen wie zuvor.

Werde jetzt den Watchdog versuchen.

Nochmals vielen Dank,

Uwe

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 7 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.