Forum: Mikrocontroller und Digitale Elektronik STM32CubeIDE mit blackmagic Debug Probe konfigurieren


von Christoph K. (chriskuku)


Lesenswert?

Folgender Aufbau:
macOS (BigSur)
ST-LinkV2 USB Dongle mit blackmagic programmiert
(lsusb: Bus 020 Device 022: ID 1d50:6018 OpenMoko, Inc. Black Magic 
Debug Probe (Application)
STM32CubeIDE 1.10.1

Ich kann doch in der Debug-Konfiguration OpenOCD angeben. Oder konnte 
nicht sogar die BMP selbst server sein?

von pegel (Gast)


Lesenswert?


von Christoph K. (chriskuku)


Lesenswert?

pegel schrieb:
> https://github.com/mike-pittelko/BlackMagic-STM32CubeIDE
Danke. Das half ein Stück weiter. Lediglich beim letzten Abschnitt auf 
der Seite:


#IMPORTANT - TO START DEBUGGING SESSION

To start the debugging session of a arm binary, you must select "Run" -> 
"Debug Configurations....", select the configuraton you just created, 
then use the "Debug" button on that page. Once you have done this once, 
you can use the "Debug History" menu to start it again.#

klappt es bei mir irgendwie nicht. "use the Debug button on that page" 
finde ich nicht. Genauer gesagt, der Debug button u.r. ist nicht 
aktiviert.


Korrektur: komme weiter. Mußte noch das application binary, das zu der 
Konfiguration gehört, eintragen.

: Bearbeitet durch User
von pegel (Gast)


Lesenswert?

Ich wandle gerade ein Bluepill zu BMP und teste.
Vermutlich wird ein Anderer eine schnellere Antwort haben.

von Christoph K. (chriskuku)


Lesenswert?

pegel schrieb:
> Ich wandle gerade ein Bluepill zu BMP und teste.
> Vermutlich wird ein Anderer eine schnellere Antwort haben.

Danke für den Einsatz. Ich komme ein Stück weiter und bekomme vom 
backend:
1
Error in final launch sequence:
2
3
Failed to execute MI command:
4
 monitor tpwr enable
5
Error message from debugger back end:
6
Target does not support this command.
7
Failed to execute MI command:
8
 monitor tpwr enable
9
Error message from debugger back end:
10
Target does not support this command.
11
Failed to execute MI command:
12
 monitor tpwr enable
13
Error message from debugger back end:
14
Target does not support this command.
15
Target does not support this command.

Ist mein bmp jetzt vielleicht zu alt?
Eher nicht. Die github Seite ist 3 Jahre alt.

: Bearbeitet durch User
von pegel (Gast)


Lesenswert?

monitor tpwr enable

Schaltet wohl Target Power.

von pegel (Gast)


Lesenswert?

Ich hatte schon mal ein BP zum BMP gemacht, finde die nötigen Dateien 
aber nicht wieder.

monitor tpwr enable

Würde ich einfach weglassen, wenn das Ziel versorgt wird.

von Christoph K. (chriskuku)


Lesenswert?

pegel schrieb:
> Ich hatte schon mal ein BP zum BMP gemacht, finde die nötigen Dateien
> aber nicht wieder.
>
> monitor tpwr enable
>
> Würde ich einfach weglassen, wenn das Ziel versorgt wird.

Hab's auskommentiert und es läuft jetzt. Danke noch mal.

von pegel (Gast)


Lesenswert?

Schön.

von Christoph K. (chriskuku)


Lesenswert?

Noch eine Frage: wenn ich die Debug-Konfiguration starte, stoppt das 
Programm in startup_stm32f103c8tx.s beim Label ResetHandler:

Warum? Ist das eine Eigenart der Debugprobe? Ich sehe keine Stelle, wo 
explizit gesetzt ist, daß beim Einsprung angehalten werden soll.

: Bearbeitet durch User
von pegel (Gast)


Angehängte Dateien:

Lesenswert?

Ich sehe da unter Startup die Möglichkeit.

von Christoph K. (chriskuku)


Angehängte Dateien:

Lesenswert?

pegel schrieb:
> Ich sehe da unter Startup die Möglichkeit.

Da ist aber nichts gesetzt.

von pegel (Gast)


Lesenswert?

eben ;)

von Christoph K. (chriskuku)


Lesenswert?

pegel schrieb:
> eben ;)

Ich wundere mich ja, daß das Programm anhält, ohne daß etwas gesetzt 
ist.

von pegel (Gast)


Lesenswert?

Das ist die erste Label Möglichkeit.

Funktioniert bei ST-Link genau so.

von Christoph K. (chriskuku)


Lesenswert?

pegel schrieb:
> Das ist die erste Label Möglichkeit.

Verstehe nicht ganz - "erste Label Möglichkeit"?
Wenn ich da "main" eintrage, passiert nichts. Programm stoppt nach dem 
Start erst mal auf "Reset_Handler".

von pegel (Gast)


Lesenswert?

Dann weiß ich auch nicht.
Kann ich nicht prüfen.
Mit dem ST-Link funktioniert das so.

von pegel (Gast)


Lesenswert?

Dann muß vermutlich der Breakpoint an BMP gesendet werden.

von pegel (Gast)


Angehängte Dateien:

Lesenswert?

Funktioniert das?

Resume bitte testen.

von Christoph K. (chriskuku)


Lesenswert?

pegel schrieb:
> Funktioniert das?
>
> Resume bitte testen.

Ja. Mit Resume. Es war so, daß nach dem Continue |> der nächste Stop in 
main(), erstes Statement (HAL_Init()) war. Da war kein Breakpoint 
eingestellt, aber der Zug hielt da.

Jetzt stoppt er nicht mehr im Reset_Handler, sondern direkt in main.
Es geht aber auch ohne das "break main", also Resume angehakt allein 
reicht.

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.