Question
STM32F407: Program Counter & Stack Pointer Corruption on Reset
Posted on January 10, 2013 at 06:39
Hi Forum
I am using the STM32F407. My compiler is Keil UVision 4. I am using the ST-Link V2 for programming and debugging. For the last three months I have been using the MCBSTM32F400 for code development and everything has been working 100%. I am now trying to get my custom made hardware to work (using the same processor and firmware). I can use Keil to successfully program my application. The ST-Link Utility also works fine. The problem seems to be that the processor is not running the application. I can see that the image has been successfully loaded into flash, however upon reset I can see the program counter and stack pointer are loaded with bogus values. The IPSR register is showing ''0x3'', which I take to mean a HardFault. I assume the HardFault is causing the Core to go into a ''Lockup'' state where it is not loading the Program counter and stack pointer with the correct values. Documentation seems to be a bit aspecific on what could cause a HardFault.I have checked my voltages and my reset lines. The 407 I am using is a Z revision in a UPBGA package, so I don't think the PDR_ON pin is an issue. Can anyone suggest to me what the problem might be? I am sure this is a hardware fault, but I am not sure where to look - like I said I can program and read memory and this firmware works fine. #stm32f407