Is the offset address of the bin file correct?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Is the offset address of the bin file correct?

Jump to solution
2,219 Views
zzqq
Contributor III

Boot

Boot reset address  0x00000004

pastedImage_1.png

APP

APPreset address   0x00010004

pastedImage_2.png

The interrupt vector table, according to our setting app, should be placed in the 0x400 offset after 0x10000, I don't know why?Actually open the bin file to find that the interrupt vector table is in the 0xfc00~0x10000 area!

pastedImage_5.png

0 Kudos
1 Solution
1,789 Views
jiri_kral
NXP Employee
NXP Employee

Hi, 

As I mentioned above - it is because you have defined flash_config seciton on address 0x400. Your bin file starts with   flash_config continues with gap and on 0xfc00 (0x10000-0x400=0xfc00) is your vector table. 

In the raw bin file there is no address definition. It is continuous file starting with first section - in your case flash_config. For boot loader is better idea use srec file - which contain addresses and is universal.   

Jiri 

View solution in original post

0 Kudos
4 Replies
1,789 Views
zzqq
Contributor III

Thanks a lot!

0 Kudos
1,789 Views
zzqq
Contributor III

pastedImage_1.png

Dear:

         Hello, it's the interrupt vector table that starts from 0x10000. Why is the generated bin file starting from 0xfc00?
          You can experiment with the settings above, and I also want to change the setting of LD to look at it again. Thank you very much.

0 Kudos
1,790 Views
jiri_kral
NXP Employee
NXP Employee

Hi, 

As I mentioned above - it is because you have defined flash_config seciton on address 0x400. Your bin file starts with   flash_config continues with gap and on 0xfc00 (0x10000-0x400=0xfc00) is your vector table. 

In the raw bin file there is no address definition. It is continuous file starting with first section - in your case flash_config. For boot loader is better idea use srec file - which contain addresses and is universal.   

Jiri 

0 Kudos
1,789 Views
jiri_kral
NXP Employee
NXP Employee

Hello, 

you also need to move the config flash area to address 0x10400 (or remove the area from startup.S and linker file for application). Flash config is always taken from boot loader. 

Which kind of bin file are you using? Raw binary file starts always from 0 - there is no info about any offset or start address. With moved (or removed to save 16 bytes) flash config area your int vector table will start from beginning of file and ends on 0x400 address. 

Jiri

0 Kudos