This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS570LS3137: Jumping to an pplication written at an offset of a flash sector

Part Number: TMS570LS3137

Hi,

Here is the scenario:

1- I write an application to address 0x20000, basicaly {bank 0, sector 4}. then I can jump to this address 0x20000 and my application starts running.

2- I write the application to address 0x20100, since i want to reserve 0x100 bytes for some bookkeeping about my application, like size, crc32 etc. And when I jump to address 0x20100, my application does not start.

Can I not burn an application at an offset of a sector? Do I have to position the .intvec of my application at the beginning of a flash sector?

Not sure why the second option does not work?

any explanation?

thank you in advance,

  • Hello,

    1. After executing this statement: ((void (*)(void))(uint32_t)0x20100)(), the PC is equal 0x20100, then the application should start. Please double check your PC value

    2. Make sure offset of intvecs of your application (link cmd file) is 0x20100 rather than 0x20000
  • yes, my ignorance.
    I should have updated the linker file of the application to reflect the updated address.
    I think I expected the processor magically to figure that out.
    thanks for quick response.