Forum: Mikrocontroller und Digitale Elektronik AVR-Studio: .hex statt .bin


von Biko (Gast)


Lesenswert?

Hallo,

kann mir jemand sagen, wie man bei dem Simulator von AVR-Studio eine 
hex-Datei statt einer bin-Datei erzeugt?

Danke!

von Peter D. (peda)


Lesenswert?

Der Simultor kann das nicht.
Nur der Compiler oder Assembler.
Dazu einfach Häkchen setzen bei "Create hex File".


Peter

von Biko (Gast)


Lesenswert?

Kleine Korrektur: will wissen, wie man statt einer hex eine bin-Datei 
erhält, hatte mich eben vertippt, ändert aber ohnehin nichts am Prinzip.

Peter Dannegger schrieb:
> Der Simultor kann das nicht.
> Nur der Compiler oder Assembler.
> Dazu einfach Häkchen setzen bei "Create hex File".
Aber wo das Häkchen setzen?
Ich benutze AVR-Studio und das wiederum benutzt GCC als Compiler. Wobei 
man bei GCC glaube ich auch im Makefile einstellen kann, welches Format 
man möchte.
Das geht im "AVR-Studio-Makefile" aber nicht, jedenfalls nicht so 
einfach. Möglicherweise könnte man dort von Hand eintragen

#Output format
FORMAT = binary

usw.,

aber lieber würde ich erst mal nicht an Makefile rumspielen und die 
Stelle finden, wo das Häkchen hingehört...

von Biko (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Dazu einfach Häkchen setzen bei "Create hex File".

könnte mir jemand einen kleinen tipp geben, wo sich das kästchen für das 
häkchen befindet?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Biko schrieb:
> Das geht im "AVR-Studio-Makefile" aber nicht, jedenfalls nicht so
> einfach.

Richtig, du müsstest ein eigenes Makefile nehmen.  Letztendlich
läuft es darauf hinaus, dass man das abschließende avr-objcopy
mit dem Schalter -O binary (statt -O ihex) aufruft, wobei man
zweckmäßigerweise die davon erzeugte Datei ebenfalls auf .bin
enden lässt (der Name ist dem objcopy selbst völlig schnuppe,
das erzeugt dir auch widerspruchslos eine Datei, die auf .hex
endet aber aufgrund von -O binary rein binären Inhalt hat).

von Oliver (Gast)


Lesenswert?

Biko schrieb:
> könnte mir jemand einen kleinen tipp geben, wo sich das kästchen für das
> häkchen befindet?

Nirgends. Das geht mit dem vom Studio automatisch erzeugten makefile 
nicht.
Da wirst du entweder ein eigenes makefile bauen, oder den 
avr-objcopy-Befehl nachträglich nochmals von Hand aufrufen müssen.

Oliver

von Biko (Gast)


Lesenswert?

Oliver schrieb:
> Da wirst du entweder ein eigenes makefile bauen, oder den
> avr-objcopy-Befehl nachträglich nochmals von Hand aufrufen müssen.
Wichtig ist auf jeden Fall, dass die Einstellung fix ist, sprich, dass 
man nicht jedes Mal vor dem Compilieren etwas von Hand umstellen muss!

von Mutlos (Gast)


Lesenswert?

avr-objcopy -O ihex meinelf.elf deinelf.hex

von Biko (Gast)


Lesenswert?

Mutlos schrieb:
> avr-objcopy -O ihex meinelf.elf deinelf.hex

Und das bedeutet für Laienprogrammierer?

Im AVR-Studio oder bei WinAVR oder woanders...

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.