Forum: Mikrocontroller und Digitale Elektronik Intel-Hex, Motorola-Hex frage


von Jana (Gast)


Lesenswert?

Hallo,
ich habe eine HEX-File,die ich auf ein Steuergerät flashen möchte. 
Dieses funktioniert auch an für sich. Habe da aber eine Verständis-Frage 
bezüglich des HEX-Formats.

Das HEX-File, welches ich Flashen möchte ist ein Intel-Hex(?). Wenn ich 
mir den Flash-Speicher auf dem Steuergerät ansehe, sind diese dort 
verdreht.

HEX-Fle
00112233 44556677

Flash-Steuergerät
33221100 77665544

Dies ist aber nur die Darstellung? Wird das Programm trotzdem richtig 
ausgeführt? Oder muss man beim schreiben im Flash darauf achten, dass 
ich die Daten drehe, sodass im Flash auch 00112233 44556677 steht?

Kennt irgendjemand eine Seite oder ein Buch, wo dass mit der Darstellung 
erläutert wird? (wieso weshalb warum und auswirkungen).

Vielen Dank
Jana

von Jim M. (turboj)


Lesenswert?

Jana schrieb:
> Kennt irgendjemand eine Seite oder ein Buch, wo dass mit der Darstellung
> erläutert wird?

Google: Little Endian.

von Einer K. (Gast)


Lesenswert?


von rcc (Gast)


Lesenswert?

bitte nicht wohl definierte Dateiformate hier (Intel)hex mit dem 
(Raw)Inhalt des Speichers im Controller verwechseln...

von Olaf (Gast)


Lesenswert?

> bitte nicht wohl definierte Dateiformate hier (Intel)hex mit dem
> (Raw)Inhalt des Speichers im Controller verwechseln...

Und wo wir schon mal dabei sind, bitte nicht Intel-Hex mit 
Motorola-S-Record verwechseln. Das sind auch zwei unterschiedliche 
Dinge.

Olaf

von Jim M. (turboj)


Lesenswert?

Übrigens sollte OP in seinem Tool mal die Memory Ansicht auf "Byte" 
anstatt 32-Bit Wort umstellen.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Jana schrieb:
> Dies ist aber nur die Darstellung? Wird das Programm trotzdem richtig
> ausgeführt? Oder muss man beim schreiben im Flash darauf achten, dass
> ich die Daten drehe, sodass im Flash auch 00112233 44556677 steht?

 Wenn dein Steuergerät eine 32-bit CPU hat, stimmt die Darstellung,
 sonst nicht.

Beitrag #5888276 wurde von einem Moderator gelöscht.
von Rene Z. (renezimmermann)


Lesenswert?

>ich habe eine HEX-File,die ich auf ein Steuergerät flashen möchte.

Welches Steuergerät? Welcher Prozessor?

>Wenn ich
>mir den Flash-Speicher auf dem Steuergerät ansehe, sind diese dort
>verdreht.

Wie? Welcher Programmer?

>Dies ist aber nur die Darstellung? Wird das Programm trotzdem richtig
>ausgeführt?

Welches Toolset?

Wie soll man da helfen? Es fehlen Infos zur CPU, Programmer, Tools, 
Workflow  usw.

Beitrag #5888302 wurde von einem Moderator gelöscht.
von michael_ (Gast)


Lesenswert?

Jana schrieb:
> Das HEX-File, welches ich Flashen möchte ist ein Intel-Hex(?). Wenn ich
> mir den Flash-Speicher auf dem Steuergerät ansehe, sind diese dort
> verdreht.
>
> HEX-Fle
> 00112233 44556677
>
> Flash-Steuergerät
> 33221100 77665544

Deine Darstellung ist unlogisch. Was ist "Flash-Steuergerät"?
Die richtige Umwandlung macht die Programmer-Soft.

Beitrag #5888311 wurde von einem Moderator gelöscht.
Beitrag #5888452 wurde von einem Moderator gelöscht.
Beitrag #5888910 wurde von einem Moderator gelöscht.
von Sebastian S. (amateur)


Lesenswert?

:100130003F0156702B5E712B722B732146013421C7
:00000001FF
Das letzte Mal, als ich was Intel-Hexiges gesehen habe, sah das Zeug 
noch so aus.

: Bearbeitet durch User
von Dimpfelmoser (Gast)


Lesenswert?

Sebastian S. schrieb:
> Das letzte Mal, als ich was Intel-Hexiges gesehen habe, sah das Zeug
> noch so aus.

Übrigens Arduino generiert auch heute noch HEX files ,
das macht Arduino ja so sympatisch ;-)
Das kann man noch begutachten  was da so alles reingefläscht wird ;-)

von Rainer V. (a_zip)


Lesenswert?

Also 5 Minuten mit Tante G. bringt alles Wissenswerte über diese 
Formate...
Gruß Rainer

von leo (Gast)


Lesenswert?

Dimpfelmoser schrieb:
> Übrigens Arduino generiert auch heute noch HEX files ,

Die generierten .elf-Files bieten mehr Information, e.g.
1
:/tmp/arduino_build_409354$ avr-objdump -S 168_blink.ino.elf | grep -A3 "void loop"
2
void loop() {
3
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
4
 380:  81 e0         ldi  r24, 0x01  ; 1
5
 382:  0e 94 70 00   call  0xe0  ; 0xe0 <digitalWrite.constprop.0>

leo

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.