TMS320F280037C: F280037C Watchdog Reset Behavior - main() Not Executing After Reset and GPIO4/75 Going High

Part Number: TMS320F280037C

Hi,

I have configured the watchdog timer on the C2000 F280037C with a timeout of approximately 1.6 seconds. While testing it by enabling the watchdog and intentionally not servicing it (using an infinite while loop), I am seeing two unexpected behaviors.

  1. Watchdog timeout and reset behavior

    • The watchdog is timing out after approximately 1.67 seconds, which is close to the expected timeout.

    • However, after the watchdog reset occurs, I expect the device to restart and execute the main() function again. This is not happening in my application.

  2. GPIO behavior after watchdog reset

    • After the watchdog reset, GPIO4/75 is going HIGH unexpectedly.

I have another standalone project with the same watchdog configuration, and in that project:

  • The watchdog timeout occurs as expected.

  • The device resets correctly.

  • The main() function executes after every hardware watchdog reset.

Because the same watchdog configuration works correctly in the standalone project, I suspect there may be some application-specific configuration or initialization causing this issue.

Has anyone encountered similar behavior? What could cause:

  • main() not to execute after a watchdog reset?

  • GPIO4/75 to go HIGH immediately after the watchdog reset?

Any suggestions on what to check would be greatly appreciated.

Thank you.

  • Hi Prashanth,

    Sorry for late reply. If you are connected to CCS when WD reset happens then after reset device will be booting as emulation boot. You need to change the emulation boot setting to boot to flash so that it can jump to application. You can check the emulation boot details in device TRM.

    Regards,

    Vivek Singh