CARME-M4 BSP  V1.5
stm32f4xx_iwdg.h
Go to the documentation of this file.
1 
29 /* Define to prevent recursive inclusion -------------------------------------*/
30 #ifndef __STM32F4xx_IWDG_H
31 #define __STM32F4xx_IWDG_H
32 
33 #ifdef __cplusplus
34  extern "C" {
35 #endif
36 
37 /* Includes ------------------------------------------------------------------*/
38 #include "stm32f4xx.h"
39 
48 /* Exported types ------------------------------------------------------------*/
49 /* Exported constants --------------------------------------------------------*/
50 
58 #define IWDG_WriteAccess_Enable ((uint16_t)0x5555)
59 #define IWDG_WriteAccess_Disable ((uint16_t)0x0000)
60 #define IS_IWDG_WRITE_ACCESS(ACCESS) (((ACCESS) == IWDG_WriteAccess_Enable) || \
61  ((ACCESS) == IWDG_WriteAccess_Disable))
62 
69 #define IWDG_Prescaler_4 ((uint8_t)0x00)
70 #define IWDG_Prescaler_8 ((uint8_t)0x01)
71 #define IWDG_Prescaler_16 ((uint8_t)0x02)
72 #define IWDG_Prescaler_32 ((uint8_t)0x03)
73 #define IWDG_Prescaler_64 ((uint8_t)0x04)
74 #define IWDG_Prescaler_128 ((uint8_t)0x05)
75 #define IWDG_Prescaler_256 ((uint8_t)0x06)
76 #define IS_IWDG_PRESCALER(PRESCALER) (((PRESCALER) == IWDG_Prescaler_4) || \
77  ((PRESCALER) == IWDG_Prescaler_8) || \
78  ((PRESCALER) == IWDG_Prescaler_16) || \
79  ((PRESCALER) == IWDG_Prescaler_32) || \
80  ((PRESCALER) == IWDG_Prescaler_64) || \
81  ((PRESCALER) == IWDG_Prescaler_128)|| \
82  ((PRESCALER) == IWDG_Prescaler_256))
83 
90 #define IWDG_FLAG_PVU ((uint16_t)0x0001)
91 #define IWDG_FLAG_RVU ((uint16_t)0x0002)
92 #define IS_IWDG_FLAG(FLAG) (((FLAG) == IWDG_FLAG_PVU) || ((FLAG) == IWDG_FLAG_RVU))
93 #define IS_IWDG_RELOAD(RELOAD) ((RELOAD) <= 0xFFF)
94 
102 /* Exported macro ------------------------------------------------------------*/
103 /* Exported functions --------------------------------------------------------*/
104 
105 /* Prescaler and Counter configuration functions ******************************/
106 void IWDG_WriteAccessCmd(uint16_t IWDG_WriteAccess);
107 void IWDG_SetPrescaler(uint8_t IWDG_Prescaler);
108 void IWDG_SetReload(uint16_t Reload);
109 void IWDG_ReloadCounter(void);
110 
111 /* IWDG activation function ***************************************************/
112 void IWDG_Enable(void);
113 
114 /* Flag management function ***************************************************/
115 FlagStatus IWDG_GetFlagStatus(uint16_t IWDG_FLAG);
116 
117 #ifdef __cplusplus
118 }
119 #endif
120 
121 #endif /* __STM32F4xx_IWDG_H */
122 
131 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
void IWDG_SetPrescaler(uint8_t IWDG_Prescaler)
Sets IWDG Prescaler value.
void IWDG_Enable(void)
Enables IWDG (write access to IWDG_PR and IWDG_RLR registers disabled).
void IWDG_SetReload(uint16_t Reload)
Sets IWDG Reload value.
void IWDG_WriteAccessCmd(uint16_t IWDG_WriteAccess)
Enables or disables write access to IWDG_PR and IWDG_RLR registers.
void IWDG_ReloadCounter(void)
Reloads IWDG counter with value defined in the reload register (write access to IWDG_PR and IWDG_RLR ...
FlagStatus IWDG_GetFlagStatus(uint16_t IWDG_FLAG)
Checks whether the specified IWDG flag is set or not.