STM32F4xx HAL Driver master
STM32CubeF4 HAL / LL Drivers API Reference
Loading...
Searching...
No Matches
stm32f4xx_hal_iwdg.h
Go to the documentation of this file.
1
18
19/* Define to prevent recursive inclusion -------------------------------------*/
20#ifndef STM32F4xx_HAL_IWDG_H
21#define STM32F4xx_HAL_IWDG_H
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27/* Includes ------------------------------------------------------------------*/
28#include "stm32f4xx_hal_def.h"
29
33
37
38/* Exported types ------------------------------------------------------------*/
42
46typedef struct
47{
48 uint32_t Prescaler;
50
51 uint32_t Reload;
53
55
59typedef struct
60{
61 IWDG_TypeDef *Instance;
62
65
66
70
71/* Exported constants --------------------------------------------------------*/
75
79#define IWDG_PRESCALER_4 0x00000000u
80#define IWDG_PRESCALER_8 IWDG_PR_PR_0
81#define IWDG_PRESCALER_16 IWDG_PR_PR_1
82#define IWDG_PRESCALER_32 (IWDG_PR_PR_1 | IWDG_PR_PR_0)
83#define IWDG_PRESCALER_64 IWDG_PR_PR_2
84#define IWDG_PRESCALER_128 (IWDG_PR_PR_2 | IWDG_PR_PR_0)
85#define IWDG_PRESCALER_256 (IWDG_PR_PR_2 | IWDG_PR_PR_1)
89
93
94/* Exported macros -----------------------------------------------------------*/
98
104#define __HAL_IWDG_START(__HANDLE__) WRITE_REG((__HANDLE__)->Instance->KR, IWDG_KEY_ENABLE)
105
112#define __HAL_IWDG_RELOAD_COUNTER(__HANDLE__) WRITE_REG((__HANDLE__)->Instance->KR, IWDG_KEY_RELOAD)
113
117
118/* Exported functions --------------------------------------------------------*/
122
126/* Initialization/Start functions ********************************************/
131
135/* I/O operation functions ****************************************************/
140
144
145/* Private constants ---------------------------------------------------------*/
149
153#define IWDG_KEY_RELOAD 0x0000AAAAu
154#define IWDG_KEY_ENABLE 0x0000CCCCu
155#define IWDG_KEY_WRITE_ACCESS_ENABLE 0x00005555u
156#define IWDG_KEY_WRITE_ACCESS_DISABLE 0x00000000u
157
161
162/* Private macros ------------------------------------------------------------*/
166
172#define IWDG_ENABLE_WRITE_ACCESS(__HANDLE__) WRITE_REG((__HANDLE__)->Instance->KR, IWDG_KEY_WRITE_ACCESS_ENABLE)
173
179#define IWDG_DISABLE_WRITE_ACCESS(__HANDLE__) WRITE_REG((__HANDLE__)->Instance->KR, IWDG_KEY_WRITE_ACCESS_DISABLE)
180
186#define IS_IWDG_PRESCALER(__PRESCALER__) (((__PRESCALER__) == IWDG_PRESCALER_4) || \
187 ((__PRESCALER__) == IWDG_PRESCALER_8) || \
188 ((__PRESCALER__) == IWDG_PRESCALER_16) || \
189 ((__PRESCALER__) == IWDG_PRESCALER_32) || \
190 ((__PRESCALER__) == IWDG_PRESCALER_64) || \
191 ((__PRESCALER__) == IWDG_PRESCALER_128)|| \
192 ((__PRESCALER__) == IWDG_PRESCALER_256))
193
199#define IS_IWDG_RELOAD(__RELOAD__) ((__RELOAD__) <= IWDG_RLR_RL)
200
201
202
206
210
214
215
216#ifdef __cplusplus
217}
218#endif
219
220#endif /* STM32F4xx_HAL_IWDG_H */
HAL_StatusTypeDef HAL_IWDG_Init(IWDG_HandleTypeDef *hiwdg)
HAL_StatusTypeDef HAL_IWDG_Refresh(IWDG_HandleTypeDef *hiwdg)
This file contains HAL common defines, enumeration, macros and structures definitions.
HAL_StatusTypeDef
HAL Status structures definition.
IWDG Handle Structure definition.
IWDG_TypeDef * Instance
IWDG_InitTypeDef Init
IWDG Init structure definition.