My application uses and STM32F405. The power supplies are very stable, based on a design I have used in other applications. Dittio for the other hardware peripherals and reset circuit, etc. I have used the 405 in other projects with no such problems as have here.
I have an application that for all intents and purposes, should be written correctly - this based on existing projects framework that has worked well in other applications. I'm using the newest CMSIS libraries (1.81.)
On reset, I printf the RCC->CSR register, and it always returns 0x24000000, meaning that bits 26 (RCC_FLAG_PINRST) and bit 29 (RCC_FLAG_IWDGRST) are set.
The watchdog timer is set correctly - again, I am using the same function to set up and reload the IWDG as in other applications. The timeout is set for 1000ms, I am resetting it at a 250ms rate. I have a hard fault handler to trap and display errors, and that is not getting triggered.
All my interrupts are set up correctly. I'm using FreeRTOS, and have the configLIBRARY_KERNEL_INTERRUPT_PRIORITY set to 14. I have configASSERT defined so that it will print out any errors caught there, but it does not print anything.
Is there any way of determining what is going on?
Thanks for any help you can provide.