I have implemented a watchdog with Processor Expert for my system. But what I have found out? I ended up with a looping system, and the watchdog did not fire.
What went wrong?
My code was looping in the initialization sequence of my wireless transceiver:
Ok, but this should have been catched by the watchdog, or not?
Actually not, as the watchdog obviously get enabled *afterwards*:
There is a Processor Expert view to change the sequence, accessible with the menu Window > Show View:
This view gives me the opportunity to view and change the initialization sequence:
Using the ‘up’ arrow I can make it first in the list:
Now the watchdog is enabled before any other component:
This only affects the initialization within
PE_low_level_init(). To enable the watchdog right after reset, I would need to set this up in the CPU component.
The Initialization Sequence view of Processor Expert gives me a way to change the initialization order of my components. Of course certain things I cannot affect, or if there is an explicit dependency between components. But with that view I have an easy way to control the sequencing.