30#ifdef LIBOPENCM3_IWDG_H
32#ifndef LIBOPENCM3_IWDG_COMMON_ALL_H
33#define LIBOPENCM3_IWDG_COMMON_ALL_H
40#define IWDG_KR MMIO32(IWDG_BASE + 0x00)
43#define IWDG_PR MMIO32(IWDG_BASE + 0x04)
46#define IWDG_RLR MMIO32(IWDG_BASE + 0x08)
49#define IWDG_SR MMIO32(IWDG_BASE + 0x0c)
60#define IWDG_KR_RESET 0xaaaa
61#define IWDG_KR_UNLOCK 0x5555
62#define IWDG_KR_START 0xcccc
75#define IWDG_PR_DIV4 0x0
76#define IWDG_PR_DIV8 0x1
77#define IWDG_PR_DIV16 0x2
78#define IWDG_PR_DIV32 0x3
79#define IWDG_PR_DIV64 0x4
80#define IWDG_PR_DIV128 0x5
81#define IWDG_PR_DIV256 0x6
96#define IWDG_SR_RVU (1 << 1)
99#define IWDG_SR_PVU (1 << 0)
117#warning "iwdg_common_all.h should not be included explicitly, only via iwdg.h"
void iwdg_start(void)
IWDG Enable Watchdog Timer.
void iwdg_set_period_ms(uint32_t period)
IWDG Set Period in Milliseconds.
bool iwdg_reload_busy(void)
IWDG Get Reload Register Status.
bool iwdg_prescaler_busy(void)
IWDG Get Prescaler Register Status.
void iwdg_reset(void)
IWDG reset Watchdog Timer.