This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Why shows debugger incorrect address?

Hi,

I'm using Keil uVision.
I need my application to start at address 0x08001000 and not on the flash base address 0x08000000.
So I changed the R/O Base address in the Linker window to 0x08001000.

After linking and starting debugging (CTL+F5) the Disassembly Window, when stepping through shows addresses at 0x08000000 and up while the .map file shows that code is located at 0x08001000.

How can that be explained?

Thanks

Henk

Parents
  • Hi,

    I'm using the STM32F103ZE uC.

    The valid flash locatins are 512KB ranging from 0x0800 0000 up to 0x0807 FFFF.

    The application itself I think is correctly loaded at (B).

    The vectortable by default is at address 0x0800 0000 also mapped at address 0x0000 0000 and can be given any offset.

    I modified the Reset_Handler so it loads the main() address in (B) but somehow the debugger does not run well. It skips executable code so I can't trace what code path really is executed.

    I leave it this way and will ask a new question concerning the debugger because that's the real problem I think.

    Henk

Reply
  • Hi,

    I'm using the STM32F103ZE uC.

    The valid flash locatins are 512KB ranging from 0x0800 0000 up to 0x0807 FFFF.

    The application itself I think is correctly loaded at (B).

    The vectortable by default is at address 0x0800 0000 also mapped at address 0x0000 0000 and can be given any offset.

    I modified the Reset_Handler so it loads the main() address in (B) but somehow the debugger does not run well. It skips executable code so I can't trace what code path really is executed.

    I leave it this way and will ask a new question concerning the debugger because that's the real problem I think.

    Henk

Children
No data