WDT driver¶
-
group
nrfx_wdt
Watchdog Timer (WDT) peripheral driver.
Defines
-
NRFX_WDT_IRQ_CONFIG
¶ WDT instance interrupt priority configuration.
-
NRFX_WDT_INSTANCE
(id)¶ Macro for creating an instance of the WDT driver.
-
NRFX_WDT_DEFAULT_CONFIG
¶ WDT driver default configuration.
This configuration sets up WDT with the following options:
run when CPU is in SLEEP mode, pause when in HALT mode
reload value: 2000 ms
Typedefs
-
typedef void (*
nrfx_wdt_event_handler_t
)(void)¶ WDT event handler function type.
-
typedef nrf_wdt_rr_register_t
nrfx_wdt_channel_id
¶ WDT channel ID type.
Functions
-
nrfx_err_t
nrfx_wdt_init
(nrfx_wdt_t const *p_instance, nrfx_wdt_config_t const *p_config, nrfx_wdt_event_handler_t wdt_event_handler)¶ Function for initializing the WDT driver instance.
- Parameters
p_instance – [in] Pointer to the driver instance structure.
p_config – [in] Pointer to the structure with the initial configuration.
wdt_event_handler – [in] Event handler provided by the user. Ignored when NRFX_WDT_CONFIG_NO_IRQ option is enabled.
- Returns NRFX_SUCCESS
Initialization was successful.
- Returns NRFX_ERROR_INVALID_STATE
The driver was already initialized.
-
nrfx_err_t
nrfx_wdt_channel_alloc
(nrfx_wdt_t const *p_instance, nrfx_wdt_channel_id *p_channel_id)¶ Function for allocating a watchdog channel.
Note
This function can not be called after nrfx_wdt_start().
- Parameters
p_instance – [in] Pointer to the driver instance structure.
p_channel_id – [out] ID of granted channel.
- Returns NRFX_SUCCESS
The channel was successfully allocated.
- Returns NRFX_ERROR_NO_MEM
There is no available channel to be used.
-
void
nrfx_wdt_enable
(nrfx_wdt_t const *p_instance)¶ Function for starting the watchdog.
Note
After calling this function the watchdog is started, so the user needs to feed all allocated watchdog channels to avoid reset. At least one watchdog channel must be allocated.
- Parameters
p_instance – [in] Pointer to the driver instance structure.
-
void
nrfx_wdt_feed
(nrfx_wdt_t const *p_instance)¶ Function for feeding the watchdog.
Function feeds all allocated watchdog channels.
- Parameters
p_instance – [in] Pointer to the driver instance structure.
-
void
nrfx_wdt_channel_feed
(nrfx_wdt_t const *p_instance, nrfx_wdt_channel_id channel_id)¶ Function for feeding an invidual watchdog channel.
- Parameters
p_instance – [in] Pointer to the driver instance structure.
channel_id – [in] ID of watchdog channel.
-
NRFX_STATIC_INLINE uint32_t
nrfx_wdt_task_address_get
(nrfx_wdt_t const *p_instance, nrf_wdt_task_t task)¶ Function for returning a requested task address for the WDT driver module.
- Parameters
p_instance – [in] Pointer to the driver instance structure.
task – [in] One of the WDT tasks.
- Returns
Task address.
-
NRFX_STATIC_INLINE uint32_t
nrfx_wdt_event_address_get
(nrfx_wdt_t const *p_instance, nrf_wdt_event_t event)¶ Function for returning a requested event address for the WDT driver module.
- Parameters
p_instance – [in] Pointer to the driver instance structure.
event – [in] One of the WDT events.
- Returns
Event address.
-
struct
nrfx_wdt_t
¶ - #include <nrfx_wdt.h>
Data structure of the Watchdog (WDT) driver instance.
-
struct
nrfx_wdt_config_t
¶ - #include <nrfx_wdt.h>
Struct for WDT initialization.
Public Members
-
nrf_wdt_behaviour_t
behaviour
¶ WDT behaviour when CPU in sleep/halt mode.
-
uint32_t
reload_value
¶ WDT reload value in ms.
-
uint8_t
interrupt_priority
¶ WDT interrupt priority
-
nrf_wdt_behaviour_t
-