Hallo zusammen,
ich versuche gerade erste Schritte mit einem STM32F1.
Board ist eines dieser China Dinger.
Als Umgebung verwende ich Eclipse, eingerichtet mit/nach GNU MCU Eclipse
(https://gnu-mcu-eclipse.github.io/)
Ich habe ein einfaches Blink LED Beispiel Projekt erstellt.
Wenn ich jetzt das Projekt als "Release" build und die .hex Datei mit
dem ST-Link Utility flashe, läuft mein Programm nur mit angeschlossenem
ST-Link.
In dem Moment, wo ich den ST-Link einstecke, fängt die LED an zu blinken
und hört auf, sobald ich ihn abstecke.
Adapter und Board sind verbunden über SWDIO, SWCLK, SWO, Reset und GND.
Stromversorgung läuft nicht über den ST-Link!
Boot0 und Boot1 sind auf GND.
Keine Fehler etc. beim Compilieren.
Was muss man tun damit mein Programm auch läuft, wenn kein ST-Link
angeschlossen ist?
Oder weiß jemand woran das liegt?
Genaues vorgehen:
- Eclipse: Build -> Release
- ST-Link Utility:
-- Target -> Connect
-- Target -> Program
Ausgabe ST-Link Utility:
Sebastian schrieb:> Board ist eines dieser China Dinger.
Schön daß es in China nur ein einziges STM32F1-Board gibt.
Aber das ist genauso unwichtig, wie z.B. Dein Programm in dem man
nachsehen könnte wie Du z.B. den Systemtakt eingestellt hast.
Die Jumper für Boot0 und Boot1 mal ändern
vermute mal es sind doch Jumper oder ?
(Du schreibst ja nicht welches (China) DEV-Board !)
Es gibt nur noch 3 weitere Kombination
00 ' Boot1 L Boot0 L geht nicht (warum auch immer)
01 ' Boot1 L Boot0 H
10 ' Boot1 H Boot0 L
11 ' Boot1 H Boot0 H
DJ
Falls du Semi-Hosting aktiviert hast, kann es sein, dass der Code nur
mit SWD-Connection läuft.
Problemlösung ist einfach: Den Define für Semi-Hosting deaktivieren.
Falls du eine IDE verwendest, kannst du auch von Debug auf Release
umstellen - da wird Semi-Hosting dann normal nicht verwendet.
*edit*:
Gerade gesehen
> Eclipse: Build -> Release
Hmm, das ist dann seltsam ... Ich verwende auch Eclipse + Gnu-ARM-Plugin
+ OpenOCD, aber bei mir gab es den Effekt immer nur mit aktiviertem
Semi-Hosting.
Sebastian schrieb:> In dem Moment, wo ich den ST-Link einstecke, fängt die LED an zu blinken
^^^^^^^^^^^^^^^^^
Ja, wo denn? Der ST-Link-Adapter hat gemeinhin 2 "Enden", Target und
Host.
> und hört auf, sobald ich ihn abstecke.> Adapter und Board sind verbunden über SWDIO, SWCLK, SWO, Reset und GND.> Stromversorgung läuft nicht über den ST-Link!
Guten Abend!
Der letzte Beitrag ist zwar schon eine Woche her, dennoch ...
Vorausgesetzt Du trennst zwischen Link und STM-Board:
Evtl. fehlt dann der Takt (den der Processor vorher vom
Link bekam)?
Gutes Gelingen
Martin