SPRUHM8K December 2013 – May 2024 TMS320F28374D , TMS320F28375D , TMS320F28376D , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28378D , TMS320F28379D , TMS320F28379D-Q1
The watchdog can be configured in the SCSR register to either reset the device (WDRST) or assert an interrupt (WDINT) if the watchdog counter reaches the maximum value. The behavior of each condition is described below:
If the watchdog is configured to reset the device, then the WDRST signal pulls the device reset (XRS) pin low for 512 INTOSC1 cycles when the watchdog counter reaches the maximum value.
Note: After a CPU1 watchdog reset, the boot ROMs clears all of the system and message RAMs on both CPUs. After a CPU2 watchdog reset, CPU2's boot ROM clears all of the CPU2 system and message RAMs.
When the watchdog counter expires, the watchdog asserts an interrupt by driving the WDINT signal low for 512 INTOSC1 cycles. The falling edge of WDINT triggers a WAKEINT interrupt in the PIE, if the interrupt is enabled. Because the PIE is edge-triggered, re-enabling the WAKEINT while WDINT is active does not produce a duplicate interrupt.
To avoid unexpected behavior, software must not change the configuration of the watchdog while WDINT is active. For example, changing from interrupt mode to reset mode while WDINT is active, immediately resets the device. Disabling the watchdog while WDINT is active, causes a duplicate interrupt if the watchdog is later re-enabled. If a debug reset is issued while WDINT is active, the reset cause register (RESC) shows a watchdog reset. The WDINTS bit in the SCSR register can be read to determine the current state of WDINT.