Forum: Compiler & IDEs Zwei FW in eine MCU Programmieren


von Ô_ô (Gast)


Lesenswert?

Hallo Leute,

ich muss auf einen LPC1114 einen secondary Bootloader und die FW 
programmieren.
Im Augenblick ist es so dass ich zuerst den Bootloader über JTAG/SWD 
Programmiere und dann über RS485 die FW nachschiebe.
Bootloader bleibt immer drauf zwecks FW update über RS485.

Um bei der ersten Programmierung Zeit zu Sparren will ich den Bootloader 
und die FW in ein .axf File packen.

Also müssen im Grunde zwei verschiede FW in eine Datei (.axf)
Wie macht man das?
Vorgehensweise?
Welche Einstellungen muss man vornehmen bzw. welche Schlagwörter gibt’s 
dazu.

von Peter D. (peda)


Lesenswert?

Keine Ahnung, was AXF ist, ich brenne immer nur HEX und da ist es 
einfach:
Die letzte Zeile (Enderecord) der einen löschen und dann die andere 
rankopieren.

von Ô_ô (Gast)


Lesenswert?

Eine .hex Datei ist für mich keine Option.

Es würde auch mit einer .bin Datei gehen.

.axf ist ein lpcxpresso Format.

von dunno.. (Gast)


Lesenswert?

Wo ist denn das Problem daran, fürs erste programmieren der Controller 
.hex zu verwenden..? Debuggen kannst du ja weiter ohne..

Wie hoch ist denn das angestrebte Volumen, darfs was kosten?

von Ô_ô (Gast)


Lesenswert?

Das Problem ist dass es mit einem .hex File nicht geht.
Der Bootloader auf dem LPC kann nicht mit dem rs232 - rs485 Konverter 
umgehen. Wurde beim Entwerfen der Platine nicht berücksichtigt.

Ich kann den LPC nur über die SWD Schnittstelle mit den Programer 
programmieren.
Dieser kann nur .axf oder .bin.

Also wie kann ich einen Bootloader als Bibliothek erstellen und vorne 
platzieren damit dieser zuerst ausgeführt wird?

von Peter D. (peda)


Lesenswert?


von Eric B. (beric)


Lesenswert?

Erstelle eine HEX Datei und wandele das in einer BIN um:
http://hex2bin.sourceforge.net/

EDIT: Der Peda war schnella'

: Bearbeitet durch User
von Ô_ô (Gast)


Lesenswert?

Danke.

Check ob ich es richtig verstanden habe.

1. In der ersten .hex diese Zeile löschen ":00000001FF"
2. Das zweite .hex einfügen & speichern
3. Mit Hex2bin umwandeln
4. Glücklich sein.

von Peter P. (Gast)


Lesenswert?

Die KEIL uVision IDE kann auch HEX-Files via JTAG flashen.
Ich lege dazu ein neues Projekt an, welches leer ist,
dessen Output aber auf das Hexfile zeigt.
Wähle ich dann Download, wird das HEX-File via JTAG geflasht.
Ob dies mit lpcxpresso auch geht, weiß ich nicht.

Auf www.lpcware.com gibt es aber auch Antworten vom
lpcxpresso Support, vielleicht mal da probieren?

lpcxpresso kann vermutlich auch HEX Files generieren.

axf und elf scheinen dasselbe Format zu haben. Siehe auch
http://stackoverflow.com/questions/17761328/what-are-axf-files
Sollte also nichts lpcxpresso proprietäres zu sein?

von 7856ujtzuitzu (Gast)


Lesenswert?

Darauf achten das die applikation an einer sektorgrenze startet.

Im flashtool "erase affected"   wählen

erst bootloader flashen
dann applikation flashen

da er nur die benötigten sektoren löscht bleibt der alte inhalt erhalten
im AXF sollte ja drinstehen wo er flashen soll


wenn das funktioniert kannst du den flash wieder auslesen und hast ein 
komplett fertiges ... axf , bin .. hex was auch immer

von Marcel (Gast)


Lesenswert?

Man kann aus der lpcxpresso ide auch direkt eine bin-Datei erzeugen. 
(Sofern Sie denn benutzt wird!)

arm-none-eabi-objcopy -O binary example.axf example.bin

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.