Hallo Forum Ich habe zwei separate uVision3 Projekte in C für einen Luminary M3: - Bootloader, startadresse 0h - Applikation, Startadresse 2000h Beide Projekte werden separat in je eine BIN-Datei übersetzt. Beim Flashen wird der Bootloader an Adresse 0h, die Applikation an Adresse 2000h geschrieben. Funktioniert alles Bestens. Nun möchte ich aber eine einzelne BIN-Datei erzeugen, welche den Bootloader und die Applikation an der richtigen Adresse beinhaltet, sodass nur ein Flash-Vorgang benötigt wird. Bisher haben wir das so gelöst, dass wir einen fertig programmierten Controller wieder ausgelesen haben. Ich bin der Meinung, dass dies eigentlich direkt möglich sein sollte, indem man zur Applikation den Bootloader hinzulinken könnte. Allerdings habe ich keinen Plan, wo ich ansetzen muss.
hat du die bin files als intel hex files? Wenn ja müsste man sie einfach zusammenfügen können.
Danke für den Tipp, das funktioniert gut! Intel-Hex kann ich so erstellen: fromelf --i32 --output boot.hex boot.axf fromelf --i32 --output app.hex boot.axf Kombinieren sollte so gehen: copy /b boot.hex + app.hex bootapp.hex Dann zurück nach bin: hex2bin bootapp.hex [1] [1] http://sourceforge.net/projects/hex2bin/
Den Bootloader muss man ja nur einmal flashen. Wenn du das für weitere Controller brauchst, würde ich ein Makefile schreiben, das beide Vorgänge in einem ausführt.
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.