STM32F401 (Blackpill) lässt sich nur 1x per SWD flashen

Gast #6655983
Lesenswert?
• ▲
▼
Peter K. schrieb:
> Wieso geht es mit der originalen Firmware, aber danach nur noch mit
> reset Pin?

Weil du vermutlich mit dem Programm das du reinschreibst die
SWD-Schnittstelle verwendest/disablest und dadurch der
Controller nur noch unter "Reset-aktiv" wieder angesprochen
werden kann.
Gast #6655987
Lesenswert?
• ▲
▼
Vermutlich deaktiviert deine eigene Firmware den SWD Anschluss oder legt 
den µC schlafen (dann geht SWD nämlich auch nicht mehr).

Auf den Bluepill Boards ist die übliche Vorgehensweise, dass das eigene 
Programm nach dem Reset erstmal 1-2 Sekunden wartet, bevor es SWD 
deaktiviert (wenn überhaupt). Dann kann man zum Verbindungsaufbau den 
Reset Taster drücken.

Es geht auch ohne dieses Delay, aber das Timing ist kniffelig.

Alternativ kannst du den Boot0 Jumper auf HIGH umstecken, dann startet 
deine Firmware nicht.

> Und wieso legen die den Reset PIN nie mit auf den SWD Anschluss?

Weil das Board für Arduino gemacht wurde. Weder Arduino noch dessen 
Bootloader deaktivieren die SWD Schnittstelle. Außerdem enthält der 
Bootloader das oben genannte Delay.

Die China ST-Link Sticks haben dementsprechend auch keinen Reset 
Ausgang.

Ja, das ist außerhalb von Arduino suboptimal.

Die Möglichkeit, während des Reset connecten zu können, ist zwar bei 
allen STM32 gegeben, bei anderen ARM Controllern jedoch nicht 
selbstverständlich.
Gast #6656070
Lesenswert?
• ▲
▼
Diese Boards haben einen Reset und einen Boot0 Taster. Wenn der uC im 
WFI hängt: Boot0 gedrückt halten und dann einmal Reset, danach kommt der 
Debugger auch wieder dran.
Wenn das Board im Gehäuse steckt, dann ist das natürlich schwieriger.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.