STM32 ST-LINK Utility

Gast #5737689
Lesenswert?

Alter Hase (Ingenieur im [Un]Ruhestand) braucht Hilfe

Hallo zusammen!

Ich verwende das STM32 ST-LINK Utility (aktuell installierte Version 
v3.6.0, USB Driver v4.3.4.0)
zusammen mit einem STM32 Discovery Board.
Bisher habe ich das Utility ausschliesslich verwendet um das Flash 
Memory zu löschen und neu
compilierte SW in das Flash Memory zu laden.

Nun stehe ich vor der Situation, einige Programmteile mit einem Debugger 
auf Fehler untersuchen zu müssen.
Im Core Panel des ST-LINK Utility (Menü Target -> MCU Core...) sind die
"Buttons" Run, Halt, System Reset, Core Reset und Step vorhanden.
Damit kann der Prozessor angehalten und wieder gestartet werden.
Einzelschrittbetrieb ist ebenfalls möglich.
Das funktioniert auch ganz gut.

Jedoch fehlt die Möglichkeit Breakpoints zu setzen.

Darauf habe ich das Command Line Interface (CLI) ausprobiert (aktuell 
installierte Version v2.2.0).
Die Connection erfolgt mit st-link_cli.exe -c id=0 swd lpm

Die Commands -c , -List , -Rst , -Run funktionieren.
Bei den Commands -Halt , -Step , -SetBP , -ClrBP und -SCore
erscheint die Fehlermeldung "No target connected".

Hat jemand eine Erklärung für dieses Verhalten ?
Funktioniert das Debugging eventuell nur wenn JTAG Protocol selektiert 
wird ?

Bei Connect mit st-link_cli.exe -c id=0 jtag lpm erscheint die
Fehlermeldung "Unknown target connected"
              "Unable to connect to ST-LINK!"

Die aktuelle ST-LINK Firmware des STM32 Discovery Board ist V2J23S0.


Weis jemand, ob das neuere Utility ST-LINK/V2 das Debugging unterstützt 
und dort Breakpoints gesetzt werden können ?

An irgendwelchen Third Party Toolchains wie Atollic TrueSTUDIO, IAR 
EWARM,
Keil MDK-ARM und TASKING VX-toolset bin ich nicht interessiert, da ich 
nicht in C sondern in Assembler und FORTH programmiere.

Gruss Charly
#5737735
Lesenswert?

R.Vogg schrieb:
> An irgendwelchen Third Party Toolchains wie Atollic TrueSTUDIO, IAR
> EWARM,
> Keil MDK-ARM und TASKING VX-toolset bin ich nicht interessiert, da ich
> nicht in C sondern in Assembler und FORTH programmiere.

Wie bringst du Forth/Assembler in den Speicher ? (mecrisp ???)

Ich selbst benutze Keil. Da läßt sich alles in Assembler debuggen. Das 
wird mit den anderen genau so gehen.

Ob ST-Link das auch direkt unterstützt ist mir nicht bekannt.
Gast #5737825
Lesenswert?

Das klingt für mich so, als gehen die Befehle die funktionieren vom 
Reset und evtl. vom neu verbinden aus.

Die anderen müssen auf die laufende Verbindung zugreifen.

Macht das der Parameter HOTPLUG ?

Sonst ist vielleicht OpenOCD, GDB und Insight eine Alternative.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren