Forum: Mikrocontroller und Digitale Elektronik Intel Hex File - RecordType 02: Extended Segment Address


von Ralf A. (warpnine)


Lesenswert?

Hi,

kann mir bitte jemand erklären, welche Auswirkung genau der Record Type
02 - Extended Segment Address hat?

Was ich bis jetzt herausgefunden habe ist, dass damit die Bits 19-4
einer Segmentadresse angegeben werden, die Bits 3-0 sind Null.

Ich blick es nur noch nicht ganz. Heisst das, dass damit bei Programmen
> 64k eingestellt wird, in welchem 64k-Segment nachfolgender
Programmcode abgelegt wird?

Wenn ja, warum sind dann die Bits 3-0 = Null ?

Danke.

Ralf

von Peter (Gast)


Lesenswert?

Intel Hex kann maximal in einem Segment von 0x0000 bis 0xFFFF
adressieren. Wenn dein beschreibarer Speicherbereich (zB AtMega128)
grösser als 64k ist, muss eben ein neuer 64k Block addressiert werden.
Das geht mit dem Identifier 02

:020000-0200-00FC              Block 0
:08-0000-000C94BE0F0C940000EB  Start bei 0x000
......
:08-FFF8-00FA93EA93E0E0F0E067  8 Bytes, start bei 0xFFF8
:020000-0210-00EC              Block 1
:08-0000-00FA93EA93E8E0F1E055  8 byte, start bei 0x00
......

von Ralf A. (warpnine)


Lesenswert?

Hi Peter,

danke für deine Antwort.
Dass mit diesem System größere Programme als 64k angegeben werden, ist
mir schon klar.

> :020000-0210-00EC   Block 1

Müsste das für Block 1 nicht :020000-02 00-01 EC lauten?
Warum 0x1000 und nicht 0x0001 ?

Ralf

von Pieter (Gast)


Lesenswert?

moin,

ist schon etwas umfangreicher...

http://www.interlog.com/~speff/usefulinfo/Hexfrmt.pdf


Mit Gruß
Pieter

von Ralf A. (warpnine)


Lesenswert?

Danke.

Ich habe bereits diese Datei (bzw. eine etwas andere, aber mit gleichem
Datum und einer Seite mehr. Ist sogar noch n bisschen besser
beschrieben.

Ralf

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.