Forum: Mikrocontroller und Digitale Elektronik Intel Hex Format bei PIC Mikrocontrollern


von Nils (Gast)


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

von LangerRedeKurzerSinn (Gast)


Lesenswert?

Nils schrieb:
> Hier meine Frage: Wie hängt die Adresse des Hex-Files mit der
> eigentlichen Adresse aus dem .lst- File zusammen?

Der eine zählt Worte, der andere Bytes?

von Nils (Gast)


Lesenswert?

Oh man.. Manchmal sieht man den Wald vor lauter Bäumen nicht...

Vielen Dank.

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.