Hallo allerseits Ich besitze ein STM32F4-Discovery Board und möchte nun über dessen ST-Link Inderface vom Eclipse aus programmieren und debuggen. Meine Konfiguration: - WindowsXP 32Bit - Eclipse-cpp-luna-M4-win32 - GNU ARM Eclipse Plugin, Version 1.1.7-20131224 - gcc-arm-none-eabi-4_8-2013q4-20131204-win32 Projekte erstellen und compilieren funktioniert problemlos, aber wie kann ich über den ST-Link (SWD) debuggen? Ich besitze keinen (Segger) J-Link. CoCoox habe ich mir angeschaut, da wurden mir zuviel nützliche Eclips-Feautures kastriert. Ich bin bestimmt nicht der einzige der Eclipse und das STM32-Discovery verwendet, wie bzw. womit debuggt ihr, bzw wie richtet man das am besten ein? Es gibt diverse Beschreibungen im internet, die sind aber unvollständid oder beruhen auf alten Versionen und funktionieren so nicht mehr. Kann man sich irgendwie den Debug-Server vom CooCox rauskopieren? Ich bin dankbar für eure Feedbacks!
Du brauchst einen GDB-Server für ST-Link, da gäbe es OpenOCD und "texane stlink". Den musst du installieren und starten, und in eclipse eine Debug-Konfiguration für Hardware-Debugging so einrichten, dass sie den GDB-Server verwendet (Port, startupscript etc). Mit dem J-Link müsstest du im übrigen genau das gleiche machen, aber eben mit dem J-Link GDB Server.
Ich habe nun zwei Möglichkeiten zum Debuggen über ST-Link ausprobiert. Der "Texane ST-Link" GDB-Server läuft recht gut mit dem GNU ARN Eclipse Plug-In: http://gnuarmeclipse.livius.net/blog/ Mit dem OpenOCD kann man ebenfalls arbeiten, er wird vom Zylin-CDT Plugin unterstützt: http://vedder.se/2012/12/debugging-the-stm32f4-using-openocd-gdb-and-eclipse/ Funktioniert aber weniger stabil, bleibt oft hängen und ich muss 2..3 mal probieren bis die Debug-Session endlich steht. Aber so glatt wie mit CooCox läuft leider keiner der beiden Möglichkeiten, zudem würde ich oft gerne einfach die SW direkt vom Eclipse auf das Target laden (mit einem Klick). Wer hätte da noch gute Tipps, Beschreibungen, Links?
Peter schrieb: > Der "Texane ST-Link" GDB-Server läuft recht gut mit dem GNU ARN Eclipse > Plug-In: http://gnuarmeclipse.livius.net/blog/ Hmm... Kapier ich nicht. So wie ich das verstanden habe, steht der GDB-Server von Texane nur für Linux zur Verfügung. Du benutzt aber Windows-XP. Bitte nenne doch mal deine genaue Konfiguration und warum dir diese Lösung nicht so gefällt. Bei OpenOCD hast du es ja genannt (instabil). Hier ist ein Link: http://www.chibios.org/dokuwiki/doku.php?id=chibios:guides:stlink_eclipse Dort wird beschrieben wie man den GDB-Server vom TrueStudio "extrahiert" und dann mit Eclipse und ST-Link benutzt. Ich habe das nicht probiert, nur weil es mich auch interessiert, habe ich mal gegraben. Falls du es probierst, berichte bitte mal. Edit: Habe eben zumindest den GDB-Server mit 7-ZIP aus dem TrueStudio Executable extrahieren können. Nun hab ich keine Zeit mehr zum Testen.
:
Bearbeitet durch User
>Hmm... Kapier ich nicht. So wie ich das verstanden habe, steht der >GDB-Server von Texane nur für Linux zur Verfügung. Du benutzt aber >Windows-XP. Hier gib es eine Version die für WindowsXP gebaut wurde... ==> http://www.emb4fun.de/archive/stlink/index.html >und warum dir diese Lösung nicht so gefällt... Ich stelle mir eine Lösung vor, wo men einfach auf das [Debug] Icon klicken kann und los geht es mit debuggen, ohne vorher händisch den Debug-Server zu starten und eine Breackpoint im main() setzen zu müssen. (Sonst startet er einfach durch...) Ebenso mit dem SW-Download, bzw. Flashen => Einziger Mausklick auf das entsprechende Icon. Es gibt doch sicher zahlreiche Leute die mit Eclipse arbeiten und sich da besser auskennen. Hat mir niemand einige Tipps..?
Ich fand folgende Info: >New gdb servers form Attolic TrueStudio are protected to use only >with original application.. The last version that works outside >TrueStudioST-LINK_gdbserver.exe ver. 1.4.1 extracted from TrueStudio >ver. 2.3.0 Könnte mir jemand den Atollic ST-LINK_gdbserver V-1.4.1 zumailen?
:
Bearbeitet durch User
Peter schrieb: > Ich stelle mir eine Lösung vor, wo men einfach auf das [Debug] Icon > klicken kann und los geht es mit debuggen, ohne vorher händisch den > Debug-Server zu starten und eine Breackpoint im main() setzen zu müssen. Das wirst du kaum hinkriegen. Ich habe den J-Link und starte den J-LINK GDB-Server händisch einmal und kann dann immer wirder aus Eclipse heraus eine Debug-Session starten (mit einem oder zwei Klick(s)). Da ich aber auch das STM32F4 Discovery Board habe, wollte ich natürlich dafür den integrierten ST-Link nutzen. Wie das damit geht wieß ich eben noch nicht. Peter S. schrieb: > Ich fand folgende Info: Mist, ich wußte, dass da ein Haken ist. Wie blöd.
Peter schrieb: > Ich stelle mir eine Lösung vor, wo men einfach auf das [Debug] Icon > klicken kann und los geht es mit debuggen, ohne vorher händisch den > Debug-Server zu starten und eine Breackpoint im main() setzen zu müssen. > (Sonst startet er einfach durch...) > > Ebenso mit dem SW-Download, bzw. Flashen => Einziger Mausklick auf das > entsprechende Icon. > > Es gibt doch sicher zahlreiche Leute die mit Eclipse arbeiten und sich > da besser auskennen. Hat mir niemand einige Tipps..? Ich nutze Eclipse Indigo, da ich mit Juno Probleme (Stabilität beim debuggen) hatte und die Nachfolger nicht mehr ausprobiert habe. Ich habe das bei mir folgendermaßen gelöst: 1. GDBserver über "External Tools Config" aufrufbar gemacht [1] 2. In der "Debug Config" unter "Startup" "Set breakpoint at:" aktiviert und "main" eingetragen [2] 3. Die beiden eben erstellten Teile in einer "Run Config" zusammengefasst Beim ersten Start muss somit nur der "Play"-Knopf angeklickt werden und danach jeweils nur noch der Käfer. Was mir allgemein nicht an der ganzen Sache mit Eclipse gefällt ist, dass diese ganzen Einstellungen Workspace-spezifisch sind. Wenn man also mehrere Projekte innerhalb eines Workspaces hat (theoretsich ohne Probleme machbar), braucht man bspw. für jedes Projekt eine eigene, separate Debug-Config und dementsprechend auch je eine Run-Config. Im CodeComposerStudio von TI (auch Eclipse-basierend) kann man in solchen Fällen jeweils ein einzelnes Projekt aktiv setzen und dann einfach drauf loslegen ohne die Configs anzupassen oder lauter einzele Configs zu haben. Wenn jemand Abhilfe dafür kennt wäre ich für Tipps sehr dankbar. [1] https://sites.google.com/site/stm32discovery/open-source-development-with-the-stm32-discovery/setting-up-eclipse-for-stm32-discovery-development [2] der Teil mit dem Breakpoint fehlt im Link https://sites.google.com/site/stm32discovery/open-source-development-with-the-stm32-discovery/getting-hardware-debuging-working-with-eclipse-and-code-sourcey
:
Bearbeitet durch User
>Wenn jemand Abhilfe dafür kennt wäre ich für Tipps sehr dankbar.
Ich auch! ;o)
Zumindest kann man Projekte, an denen man nicht gerade arbeitet einfach
"schliessen", dann hat man zumindest die unnötigen Debug-Sessions nicht
mehr in der Auswahlliste.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.