Data Structures | Macros | Typedefs | Variables
WatchdogCC32XX.h File Reference

Detailed Description

Watchdog driver implementation for CC32XX.

============================================================================

The Watchdog header file for CC32XX should be included in an application as follows:

Refer to Watchdog.h for a complete description of APIs.

This Watchdog driver implementation is designed to operate on a CC32XX device. Once opened, CC32XX Watchdog will count down from the reload value specified in the WatchdogCC32XX_HWAttrs. If it times out, the Watchdog interrupt flag will be set, and a user-provided callback function will be called. If the Watchdog Timer is allowed to time out again while the interrupt flag is still pending, a reset signal will be generated. To prevent a reset, Watchdog_clear() must be called to clear the interrupt flag.

The reload value from which the Watchdog Timer counts down may be changed during runtime using Watchdog_setReload().

Watchdog_close() is not supported by this driver implementation.

By default the Watchdog driver has resets turned on and this feature cannot be turned disabled.

To have a user-defined function run at the warning interrupt, first define a void-type function that takes a Watchdog_Handle cast to a UArg as an argument. The callback and code to start the Watchdog timer are shown below.

void watchdogCallback(UArg handle);
...
Watchdog_Handle handle;
uint32_t tickValue;
params.callbackFxn = watchdogCallback;
handle = Watchdog_open(Watchdog_configIndex, &params);
// Set timeout period to 100 ms
tickValue = Watchdog_convertMsToTicks(handle, 100);
Watchdog_setReload(handle, tickValue);
...
void watchdogCallback(UArg handle)
{
// User-defined code here
...
}

#include <stdint.h>
#include <stdbool.h>
#include <ti/drivers/Watchdog.h>

Go to the source code of this file.

Data Structures

struct  WatchdogCC32XX_HWAttrs
 Watchdog hardware attributes for CC32XX. More...
 
struct  WatchdogCC32XX_Object
 Watchdog Object for CC32XX. More...
 

Macros

#define WatchdogCC32XX_CMD_IS_TIMER_ENABLE   (Watchdog_CMD_RESERVED + 0)
 Command used by Watchdog_control to determines whether the watchdog timer is enabled. More...
 
#define WatchdogCC32XX_CMD_GET_TIMER_VALUE   (Watchdog_CMD_RESERVED + 1)
 Command used by Watchdog_control to gets the current watchdog timer value. More...
 
#define WatchdogCC32XX_CMD_IS_TIMER_LOCKED   (Watchdog_CMD_RESERVED + 2)
 Command used by Watchdog_control to determines whether the watchdog timer is locked. More...
 
#define WatchdogCC32XX_CMD_GET_TIMER_RELOAD_VALUE   (Watchdog_CMD_RESERVED + 3)
 Command used by Watchdog_control to gets the current watchdog timer reload value. More...
 

Typedefs

typedef struct WatchdogCC32XX_HWAttrs WatchdogCC32XX_HWAttrs
 Watchdog hardware attributes for CC32XX. More...
 
typedef struct WatchdogCC32XX_Object WatchdogCC32XX_Object
 Watchdog Object for CC32XX. More...
 

Variables

const Watchdog_FxnTable WatchdogCC32XX_fxnTable
 Watchdog function table for CC32XX. More...
 

Typedef Documentation

§ WatchdogCC32XX_HWAttrs

Watchdog hardware attributes for CC32XX.

intPriority is the Watchdog timer's interrupt priority, as defined by the underlying OS. It is passed unmodified to the underlying OS's interrupt handler creation code, so you need to refer to the OS documentation for usage. For example, for SYS/BIOS applications, refer to the ti.sysbios.family.arm.m3.Hwi documentation for SYS/BIOS usage of interrupt priorities. If the driver uses the ti.dpl interface instead of making OS calls directly, then the HwiP port handles the interrupt priority in an OS specific way. In the case of the SYS/BIOS port, intPriority is passed unmodified to Hwi_create().

§ WatchdogCC32XX_Object

Watchdog Object for CC32XX.

Not to be accessed by the user.

Variable Documentation

§ WatchdogCC32XX_fxnTable

const Watchdog_FxnTable WatchdogCC32XX_fxnTable

Watchdog function table for CC32XX.

Copyright 2017, Texas Instruments Incorporated