Intel Hex Format bei PIC Mikrocontrollern

Gast #2746837
Lesenswert?

Hallo zusammen,

ich programmiere mir gerade eine Bootloadersoftware für eine 
Mikrocontrollerschaltung.

Auf meinem Mikrocontroller läuft der AN1310 Serial-Bootloader von 
Microchip.
Da mein Mikrocontroller mit seiner seriellen Schnittstelle an einer 
WLAN-Karte hängt, muss ich die Bootloadersoftware neu programmiern, 
damit ich über WLAN neun Programmcode in meinen Controller laden kann.

Controller: PIC16f1936

In meinem Programm habe ich den Resetvektor auf 0x400 und den 
Interruptvektor auf 0x404 gelegt.
Beim Compilieren steh im .lst-File soweit alles richtig drin.
Wenn ich jetzt das Hex-File untersuche, steht dort an erster Stelle 
nicht die Adresse 0x400,
sondern 0x800.

Auszug .lst-File:
1
ADDR CODE  LINE SOURCE
2
           0159 
3
     0000  0160   ORG 0x0400
4
0400 2C20  0161   GOTO main

Auszug .hex-File:
1
:020000040000FA
2
:02080000202CAA
3

4
--> 2 Byte, Adresse: 0x0800 Rec-Typ: 00 Code: 20 2C Checksumme: AA

Hier meine Frage: Wie hängt die Adresse des Hex-Files mit der 
eigentlichen Adresse aus dem .lst- File zusammen? Normalerweise sollte 
die Adresse im hex-File doch ebenfalls 0x400 sein. Oder muss die Adresse 
aus dem Hex-File anders interpretiert werden

Grüße
Nils

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren