static void S32K1xx_WDog_Init(void)
{
WDOG_MemMapPtr WDOG_PTR = (WDOG_MemMapPtr)WDOG_BASE;
WDOG_PTR->CNT = 0xD928C520; //unlock watchdog
while( 0 == ( WDOG_PTR->CS & WDOG_CS_ULK(1) ) ); //wait until registers are unlocked
WDOG_PTR->TOVAL = 256; //set timeout value
WDOG_PTR->CS = WDOG_CS_EN(1) | WDOG_CS_CLK(1) | WDOG_CS_INT(1) |
WDOG_CS_WIN(0) | WDOG_CS_UPDATE(0) | WDOG_CS_DBG(1);
while( 1 == ( WDOG_PTR->CS & WDOG_CS_ULK(1) ) ); //wait until registers are locked
while( 0 == ( WDOG_PTR->CS & WDOG_CS_RCS(1) ) ); //wait until new configuration takes effect
}
I Init WDG as above,but the Watch dog register CNT don't change, and RCS register don't change to 1.
the WDG don't work.
the MCU is S32K116.
Hi,
Can you try with CS[DBG] = 0?
Thanks,
Daniel