Руслан Урядинский / libuavcan

Dependents:   UAVCAN UAVCAN_Subscriber

Embed: (wiki syntax)

« Back to documentation index

CHIP: LPC11xx Windowed Watchdog driver

CHIP: LPC11xx Windowed Watchdog driver

Data Structures

struct  LPC_WWDT_T
 Windowed Watchdog register block structure. More...

Enumerations

enum  CHIP_WWDT_CLK_SRC_T { WWDT_CLKSRC_IRC = WWDT_CLKSEL_SOURCE(0), WWDT_CLKSRC_WATCHDOG_WDOSC = WWDT_CLKSEL_SOURCE(1) }
 

Watchdog Clock Source definitions.

More...

Functions

void Chip_WWDT_Init (LPC_WWDT_T *pWWDT)
 Initialize the Watchdog timer.
void Chip_WWDT_DeInit (LPC_WWDT_T *pWWDT)
 Shutdown the Watchdog timer.
STATIC INLINE void Chip_WWDT_SetTimeOut (LPC_WWDT_T *pWWDT, uint32_t timeout)
 Set WDT timeout constant value used for feed.
STATIC INLINE void Chip_WWDT_Feed (LPC_WWDT_T *pWWDT)
 Feed watchdog timer.
STATIC INLINE void Chip_WWDT_SetWarning (LPC_WWDT_T *pWWDT, uint32_t timeout)
 Set WWDT warning interrupt.
STATIC INLINE void Chip_WWDT_SetWindow (LPC_WWDT_T *pWWDT, uint32_t timeout)
 Set WWDT window time.
STATIC INLINE void Chip_WWDT_SetOption (LPC_WWDT_T *pWWDT, uint32_t options)
 Enable watchdog timer options.
STATIC INLINE void Chip_WWDT_UnsetOption (LPC_WWDT_T *pWWDT, uint32_t options)
 Disable/clear watchdog timer options.
STATIC INLINE void Chip_WWDT_Start (LPC_WWDT_T *pWWDT)
 Enable WWDT activity.
STATIC INLINE uint32_t Chip_WWDT_GetStatus (LPC_WWDT_T *pWWDT)
 Read WWDT status flag.
void Chip_WWDT_ClearStatusFlag (LPC_WWDT_T *pWWDT, uint32_t status)
 Clear WWDT interrupt status flags.
STATIC INLINE uint32_t Chip_WWDT_GetCurrentCount (LPC_WWDT_T *pWWDT)
 Get the current value of WDT.
STATIC INLINE void Chip_WWDT_SelClockSource (LPC_WWDT_T *pWWDT, CHIP_WWDT_CLK_SRC_T wdtClkSrc)
 Get the current value of WDT.

Enumeration Type Documentation

Watchdog Clock Source definitions.

Enumerator:
WWDT_CLKSRC_IRC 

Internal RC oscillator

WWDT_CLKSRC_WATCHDOG_WDOSC 

Watchdog oscillator (WDOSC)

Definition at line 240 of file wwdt_11xx.h.


Function Documentation

void Chip_WWDT_ClearStatusFlag ( LPC_WWDT_T pWWDT,
uint32_t  status 
)

Clear WWDT interrupt status flags.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
status: Or'ed value of status flag(s) that you want to clear, should be:

  • WWDT_WDMOD_WDTOF: Clear watchdog timeout flag
  • WWDT_WDMOD_WDINT: Clear watchdog warning flag
Returns:
None

Definition at line 77 of file wwdt_11xx.c.

void Chip_WWDT_DeInit ( LPC_WWDT_T pWWDT )

Shutdown the Watchdog timer.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
Returns:
None

Definition at line 70 of file wwdt_11xx.c.

STATIC INLINE void Chip_WWDT_Feed ( LPC_WWDT_T pWWDT )

Feed watchdog timer.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
Returns:
None
Note:
If this function isn't called, a watchdog timer warning will occur. After the warning, a timeout will occur if a feed has happened.

Definition at line 119 of file wwdt_11xx.h.

STATIC INLINE uint32_t Chip_WWDT_GetCurrentCount ( LPC_WWDT_T pWWDT )

Get the current value of WDT.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
Returns:
current value of WDT

Definition at line 221 of file wwdt_11xx.h.

STATIC INLINE uint32_t Chip_WWDT_GetStatus ( LPC_WWDT_T pWWDT )

Read WWDT status flag.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
Returns:
Watchdog status, an Or'ed value of WWDT_WDMOD_*

Definition at line 201 of file wwdt_11xx.h.

void Chip_WWDT_Init ( LPC_WWDT_T pWWDT )

Initialize the Watchdog timer.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
Returns:
None

Definition at line 56 of file wwdt_11xx.c.

STATIC INLINE void Chip_WWDT_SelClockSource ( LPC_WWDT_T pWWDT,
CHIP_WWDT_CLK_SRC_T  wdtClkSrc 
)

Get the current value of WDT.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
wdtClkSrc: Selected watchdog clock source
Returns:
Nothing

Definition at line 251 of file wwdt_11xx.h.

STATIC INLINE void Chip_WWDT_SetOption ( LPC_WWDT_T pWWDT,
uint32_t  options 
)

Enable watchdog timer options.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
options: An or'ed set of options of values WWDT_WDMOD_WDEN, WWDT_WDMOD_WDRESET, and WWDT_WDMOD_WDPROTECT
Returns:
None
Note:
You can enable more than one option at once (ie, WWDT_WDMOD_WDRESET | WWDT_WDMOD_WDPROTECT), but use the WWDT_WDMOD_WDEN after all other options are set (or unset) with no other options. If WWDT_WDMOD_LOCK is used, it cannot be unset.

Definition at line 166 of file wwdt_11xx.h.

STATIC INLINE void Chip_WWDT_SetTimeOut ( LPC_WWDT_T pWWDT,
uint32_t  timeout 
)

Set WDT timeout constant value used for feed.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
timeout: WDT timeout in ticks, between WWDT_TICKS_MIN and WWDT_TICKS_MAX
Returns:
none

Definition at line 107 of file wwdt_11xx.h.

STATIC INLINE void Chip_WWDT_SetWarning ( LPC_WWDT_T pWWDT,
uint32_t  timeout 
)

Set WWDT warning interrupt.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
timeout: WDT warning in ticks, between 0 and 1023
Returns:
None
Note:
This is the number of ticks after the watchdog interrupt that the warning interrupt will be generated.

Definition at line 134 of file wwdt_11xx.h.

STATIC INLINE void Chip_WWDT_SetWindow ( LPC_WWDT_T pWWDT,
uint32_t  timeout 
)

Set WWDT window time.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
timeout: WDT timeout in ticks, between WWDT_TICKS_MIN and WWDT_TICKS_MAX
Returns:
None
Note:
The watchdog timer must be fed between the timeout from the Chip_WWDT_SetTimeOut() function and this function, with this function defining the last tick before the watchdog window interrupt occurs.

Definition at line 148 of file wwdt_11xx.h.

STATIC INLINE void Chip_WWDT_Start ( LPC_WWDT_T pWWDT )

Enable WWDT activity.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
Returns:
None

Definition at line 190 of file wwdt_11xx.h.

STATIC INLINE void Chip_WWDT_UnsetOption ( LPC_WWDT_T pWWDT,
uint32_t  options 
)

Disable/clear watchdog timer options.

Parameters:
pWWDT: The base of WatchDog Timer peripheral on the chip
options: An or'ed set of options of values WWDT_WDMOD_WDEN, WWDT_WDMOD_WDRESET, and WWDT_WDMOD_WDPROTECT
Returns:
None
Note:
You can disable more than one option at once (ie, WWDT_WDMOD_WDRESET | WWDT_WDMOD_WDTOF).

Definition at line 180 of file wwdt_11xx.h.