Forum: Compiler & IDEs ihex -> binary converter für Win Kommandozeile


von Philipp Sªsse (Gast)


Lesenswert?

Ich suche mir einen Wolf ... es wird doch wohl ein freies
Kommandozeilentool geben, daß Intel-Hex-Dateien in Binäre umwandelt,
oder? Sowas wie ihex-bin, aber für Windows. Kein "Monster" wie
WinHex!

Wäre dankbar für einen Tip! (Und sei es der, daß ich halt selbst
schreiben muß und hier veröffentlichen soll ...)

von Matthias (Gast)


Lesenswert?

Hi

avr-objcopy -I ihex -O binary main.hex main.bin

Matthias

von Philipp Sªsse (Gast)


Lesenswert?

Serienmäßig also? Ach, darum gibt es kein Extratool!

Danke! (-:

von Yagan Z. Dongobar (Gast)


Lesenswert?

Philip,

wie wäre es damit:

<http://www.keil.com/download/docs/hex2bin.zip.asp>;

Ciao, Yagan

von Danyo (Gast)


Lesenswert?

Hallo!

Wo müsste ich denn das hier eintragen:

' avr-objcopy -I ihex -O binary main.hex main.bin ' ?

Danyo

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

an der Kommandozeile? Im makefile?

Matthias

von Danyo (Gast)


Lesenswert?

Hi!

Sorry, aber außer dass ich im Makefile zusätzliche C-Sources und das
Format eingestellt habe, habe ich bisher da noch nichts
reingeschrieben...

Habs Wort für Wort so übernommen und einfach ans Ende gehängt und
bekomme folgende Fehlermeldung:

makefile:431: *** missing separator.  Stop.

Process completed, Exit Code 2.

Tut mir leid, aber ich kenn mich da echt nicht aus...

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

was willst du denn tun? Dein Ausgabehexfile in ein .bin umwandeln? Dann
stell einfach mal dein makefile hier rein und dir kann geholfen werden.

Matthias

von Danyo (Gast)


Lesenswert?

Ich hab mir das AT91SAM7S64-Board aus dem Shop geholt. Die
Programmiersoftware SAM-BA verlangt ein *.bin - File. Somit habe ich
zunächst erst mal im Makefile 'Format = binary' gesetzt. Raus bekomme
ich leider wieder ein hex-File, obwohl richtigerweise im binären Format,
weil sonst würde ja das Programm nicht laufen. Ich bin nur etwas zu faul
dazu jedes Mal in SAM-BA beim Dateidialog für den zu downloadenen File
auf 'All Files' zu klicken, um dann den hex-File statt dem
standardmäßig verlangten Bin-File reinzuhacken... Hoffe, das war jetzt
nicht allzu verwirrend! :-)
Demzufolge war ich froh zu lesen, dass ich ja auch gleich ein Bin-File
mit der make.exe erzeugen kann. Nur wie ist die Frage?!?

Habs daraufhin mit dem Eintrag:
# Default target.
all: begin gccversion sizebefore build sizeafter finished end

build: elf bin lss sym

elf: $(TARGET).elf
bin: $(TARGET).bin
lss: $(TARGET).lss
sym: $(TARGET).sym

(bin statt hex)

Aber es kam nur folgende Fehlermeldung:

C:\WinAVR\utils\bin\make.exe: *** No rule to make target
`main.bin', needed by `bin'.  Stop.

Process completed, Exit Code 2.

von Patrick D. (oldbug) Benutzerseite


Lesenswert?

Hi!

Die entpsprechenden Stellen dürftest Du selber finden:

[..]
# Default target.
all: begin gccversion sizebefore build sizeafter finished end

build: elf hex bin lss sym

elf: $(TARGET).elf
hex: $(TARGET).hex
bin: $(TARGET).bin
lss: $(TARGET).lss
sym: $(TARGET).sym

[..]

# Create final output files from ELF output file.
%.bin: %.elf
  @echo
  @echo $(MSG_FLASH) $@
  $(OBJCOPY) -O binary $< $@

[..]

  $(REMOVE) $(TARGET).bin
[..]

von Danyo (Gast)


Lesenswert?

Hi Patrick!

Vielen Dank für den Tipp! Hab beim Final Output für (Format) nicht
binary eingetragen. Das war der Fehler. Aber jetzt funktionierts!

von tom-muc (Gast)


Lesenswert?

Hi,

such mal nach "srecord", kommt vom anderen Ende der Welt! :-)

Schönen Tag noch,
Thomas

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.