STM32 ST-Link ELF-Upload per Batch

OP (Firma: www.harerod.de) Persönliche Seite #4631263
Lesenswert?
• ▲
▼
Hallo Zusammen,

ich würde einen Inbetriebnehmer gerne mit einem Windows-Laptop und 
ST-Link ins Feld schicken. Dort soll ein mit Atollic TrueStudio 
erstelltes ELF über die SWD-Schnittstelle in einen STM32F4 geladen 
werden.

Nun suche ich eine Lösung mit möglichst schlankem Fuß.

Ich selber verwende den ST-Link nicht, werde aber heute noch zwei zum 
Testen beschaffen. Für diese Aufgabe ist das Teil preislich unschlagbar.

Idee:
- Voraussetzung
 - ST-Link GDB-Server
 - ARM Toolchain
- Umsetzung als Batchdatei, die
 - einen GDB-Server startet
 - einen GDB startet
 - GDB per Anweisungsliste dazu bringt folgende Aufgaben zu erledigen
  - Flash-Erase
  - Flash-Write
  - Flash-Verify

Frage, bevor ich das Rad neu erfinde:
- Kennt jemand das irgendwo fertig?
- Hat jemand Beispiele?

Danke Euch,
 marcus
#4631269
Lesenswert?
• ▲
▼
Warum den Umweg über GDB? Es gibt doch auch direkt ein Commandline 
Interface für den ST-Link. Wenn du aus deiner ELF eine Intel Hex oder 
binäre Datei machst kannst du die einfach per
1
ST-LINK_CLI -c SWD -P firmware.hex -V -Rst
oder
1
ST-LINK_CLI -c SWD -P firmware.bin 0x08000000 -V -Rst
flashen. Vielleicht geht auch die ELF Datei direkt, sitze gerade aber am 
falschen PC um das zu testen.
OP (Firma: www.harerod.de) Persönliche Seite #4631291
Lesenswert?
• ▲
▼
Ah, da war es wieder, mein kleines Problem. ;)

Mir ist in der Atollic 5.4.0 Lite Version keine Möglichkeit bekannt, 
direkt eine HEX-Datei als Build-Artefact zu erzeugen.
Wird wohl der Umweg über die ARM Toolchain objcopy notwendig sein.

Danke Euch beiden für die Hinweise - wie gesagt, der ST-Link ist noch im 
Zulauf.

Cheerio,
 Marcus
OP (Firma: www.harerod.de) Persönliche Seite #4632334
Lesenswert?
• ▲
▼
So, die ST-Links sind heute eingetroffen.

Das GUI ST-Link Utility ist nett - HEX-File laden und Programmieren.
oder, wie oben gezeigt per CLI.

Direkte Verwendung von ELF ist nicht möglich, deswegen kommt objcopy zum 
Zuge:

Ein Kommando in der Form
"$INSTALLATIONSPFAD\GNU Tools ARM Embedded\4.8 
2013q4\bin\arm-none-eabi-objcopy.exe" -O ihex test.elf test.hex"
erzeugt ein HEX aus dem ELF.

Nochmal Danke für die Tipps.

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