I am using Cortex m4 processor from freescale K22,
In boot loader i download my firmware and after that I do following steps to soft restart
// Disable - WatchDog and disbled IRQ.
WDT_DISABLE();
Disable_ALL_IRQ();
DisableInterrupts;
// Small delay is required before Soft RESET.
delay1S();
// SOFT RESET For K20
SCB_AIRCR = SCB_AIRCR_VECTKEY(0x05FA) | SCB_AIRCR_SYSRESETREQ(1) ;
Now when MCU gets soft restart signal, next time it goes into CORE LOCK UP state
Ref:
ARM Information Center
Also after soft restart, i take jump to firmware with ODD address so as to ensure it is thumb mode.
my firmware address is 0X5000 + 1
Then it remains in Hard fault mode until i give power on reset then this hard fault state never occurs.
Can any body tell why this Hard fault state occurs when I soft restart??????
Thanks in advance!!!