TI-RTOS for SimpleLink Wireless MCUs  2.14.03.28
Data Structures | Macros | Typedefs | Variables
WatchdogCC26XX.h File Reference

Detailed Description

Watchdog driver implementation for CC26XX.

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

Driver include

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

Overview

Note that the watchdog driver has not been fully validated, and thus should be considered experimental.

The general SPI API should be used in application code, i.e. SPI_open() should be used instead of SPICC26XXDMA_open(). The board file will define the device specific config, and casting in the general API will ensure that the correct device specific functions are called.

General Behavior

This Watchdog driver implementation is designed to operate on a CC26XX device. Once opened, CC26XX Watchdog will count down from the reload value specified in the WatchdogCC26XX_HWAttrs. If it times out, the Watchdog interrupt flag will be set, and a user-provided callback function will be called. If resets have been enabled in the Watchdog_Params and 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. However, they may be turned off in the Watchdog_Params which allows the Watchdog Timer to be used like another timer interrupt. This functionality is not supported by all platforms, refer to device specific documentation for details.

Error handling

Tbd

Power Management

Tbd

Supported Functions

Tbd

Use Cases

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 such as the one shown below.

void callback(UArg handle);
...
Watchdog_Handle handle;
params.callbackFxn = callback;
handle = Watchdog_open(Watchdog_configIndex, &params);

#include <stdint.h>
#include <stdbool.h>
#include <ti/drivers/Watchdog.h>
#include <ti/sysbios/family/arm/m3/Hwi.h>
Include dependency graph for WatchdogCC26XX.h:

Go to the source code of this file.

Data Structures

struct  WatchdogCC26XX_HWAttrs
 Watchdog hardware attributes for CC26XX. More...
 
struct  WatchdogCC26XX_Object
 Watchdog Object for CC26XX. More...
 

Macros

#define ti_sysbios_family_arm_m3_Hwi__nolocalnames
 

Typedefs

typedef struct WatchdogCC26XX_HWAttrs WatchdogCC26XX_HWAttrs
 Watchdog hardware attributes for CC26XX. More...
 
typedef struct WatchdogCC26XX_Object WatchdogCC26XX_Object
 Watchdog Object for CC26XX. More...
 

Variables

const Watchdog_FxnTable WatchdogCC26XX_fxnTable
 Watchdog function table for CC26XX. More...
 

Macro Definition Documentation

#define ti_sysbios_family_arm_m3_Hwi__nolocalnames

Typedef Documentation

Watchdog hardware attributes for CC26XX.

Watchdog Object for CC26XX.

Not to be accessed by the user.

Variable Documentation

const Watchdog_FxnTable WatchdogCC26XX_fxnTable

Watchdog function table for CC26XX.

Copyright 2015, Texas Instruments Incorporated