STM32F103C8T6 kann nicht verbinden zu GDB in STM32CubeIDE

OP #7268950
Habe hier 3 Stck. STM32F103C8T6 (BP, blue pill), die ich mit 
STM32CubeIDE mittels BMP Usb Stick (ein auf BMP umprogrammierter XTW 
ST-LINK V2) programmieren will. 2 von ihnen lassen sich problemlos 
programmieren über GDB Hardware debugging, über die 4 Pins (3.3V, GND, 
SWIO, SWCLK) angeschlossen.

Bei einem der drei jedoch sagt STM32CubeIDE aber immer, s.Bild, es gebe 
ein Verbindungsproblem zum Target.

Jetzt meine Frage: entweder die BP ist kaputt oder sie wurde mal so 
programmiert, daß das SWD-Interface nicht funktioniert. Wie könnte ich 
die BP zurücksetzen?
Angehängte Dateien:
Gast #7268962
Es sind Fälschungen im Umlauf, bei denen die SWD Schnittstelle nicht 
funktioniert. Und ja, man kann die STM32 so programmieren, dass SWD 
deaktiviert wird. Sowohl der generierte Code von der Cube IDE als auch 
Arduino tun das per default.

Da kommst du mit den Boot Jumpern heraus:

Boot0 = HIGH
Boot1 = LOW
Dann Reset drücken.

Danach wartet er auf einen Firmware Upload, wahlweise seriell oder per 
SWD.
OP #7269091
OK. Wenn Du sagst: "Firmware upload", ist damit das allgemeine "Flashen" 
einer Anwendung gemeint? Oder meinst Du die "Firmware", die per default 
auf der BP programmiert ist und die das SWD-Interface wieder 
freischaltet? Wenn dem so wäre, woher bekäme ich denn diese initiale 
"Firmware"?
Gast #7269092
Christoph K. schrieb:
> Wenn Du sagst: "Firmware upload", ist damit das allgemeine
> "Flashen" einer Anwendung gemeint?

Ja

Mit dem Boot0 Jumper + Reset aktivierst du den Bootloader. Nach einem 
Reset ist die SWD Schnittstelle erstmal aktiv. Der Bootloader lässt die 
SWD Schnittstelle auch aktiv, das ist der eigentliche "Trick".
OP #7269113
Steve van de Grens schrieb:
> Christoph K. schrieb:
>> Wenn Du sagst: "Firmware upload", ist damit das allgemeine
>> "Flashen" einer Anwendung gemeint?
>
> Ja
>
> Mit dem Boot0 Jumper + Reset aktivierst du den Bootloader. Nach einem
> Reset ist die SWD Schnittstelle erstmal aktiv. Der Bootloader lässt die
> SWD Schnittstelle auch aktiv, das ist der eigentliche "Trick".

Oh Wunder, das hat's jetzt gebracht. Einmal BOOT0=1 gesetzt, Reset, 
Programm (via SWD) geflasht. BOOT0=0 gesetzt. Programm noch mal via SWD 
geflasht und Board tut's wieder wie einstmals. Danke!

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 3 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.