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

HardFault when calling Application Reset handler from bootloader

I'm using Keil (Scatter file, not lnker) and I have a bootloader and a place for two images (one active and other is for the over the air update).

i use Cortex M0 processor where there is no Vector Table Offset Register and i used to copy the vector table from flash to sram.

The problem here:

1. I do the ota update using the application and not using the bootloader.

2. I build the firmware for a specific location and when the ota update is happening the active application (which is in slot A) is downloading the new image in Slot B (but the image is built using the linker script for slot A).

3. When I jump from bootloader to app using the function pointer (I see the function ptr is holding the right address.)

4. But when jumping it is creating a hard fault. 

5. So the image built for a specific place should only be used there? Can't I use it for other slots (I also look for page alignment)?  if not what can be the possible reason for hard fault?

Parents Reply Children
No data