1 /**
2   ******************************************************************************
3   * @file    stm32f4xx_wwdg.h
4   * @author  MCD Application Team
5   * @version V1.6.1
6   * @date    21-October-2015
7   * @brief   This file contains all the functions prototypes for the WWDG firmware
8   *          library.
9   ******************************************************************************
10   * @attention
11   *
12   * <h2><center>&copy; COPYRIGHT 2015 STMicroelectronics</center></h2>
13   *
14   * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
15   * You may not use this file except in compliance with the License.
16   * You may obtain a copy of the License at:
17   *
18   *        http://www.st.com/software_license_agreement_liberty_v2
19   *
20   * Unless required by applicable law or agreed to in writing, software
21   * distributed under the License is distributed on an "AS IS" BASIS,
22   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23   * See the License for the specific language governing permissions and
24   * limitations under the License.
25   *
26   ******************************************************************************
27   */
28 
29 /* Define to prevent recursive inclusion -------------------------------------*/
30 #ifndef __STM32F4xx_WWDG_H
31 #define __STM32F4xx_WWDG_H
32 
33 #ifdef __cplusplus
34  extern "C" {
35 #endif
36 
37 /* Includes ------------------------------------------------------------------*/
38 #include "stm32f4xx.h"
39 
40 /** @addtogroup STM32F4xx_StdPeriph_Driver
41   * @{
42   */
43 
44 /** @addtogroup WWDG
45   * @{
46   */
47 
48 /* Exported types ------------------------------------------------------------*/
49 /* Exported constants --------------------------------------------------------*/
50 
51 /** @defgroup WWDG_Exported_Constants
52   * @{
53   */
54 
55 /** @defgroup WWDG_Prescaler
56   * @{
57   */
58 
59 #define WWDG_Prescaler_1    ((uint32_t)0x00000000)
60 #define WWDG_Prescaler_2    ((uint32_t)0x00000080)
61 #define WWDG_Prescaler_4    ((uint32_t)0x00000100)
62 #define WWDG_Prescaler_8    ((uint32_t)0x00000180)
63 #define IS_WWDG_PRESCALER(PRESCALER) (((PRESCALER) == WWDG_Prescaler_1) || \
64                                       ((PRESCALER) == WWDG_Prescaler_2) || \
65                                       ((PRESCALER) == WWDG_Prescaler_4) || \
66                                       ((PRESCALER) == WWDG_Prescaler_8))
67 #define IS_WWDG_WINDOW_VALUE(VALUE) ((VALUE) <= 0x7F)
68 #define IS_WWDG_COUNTER(COUNTER) (((COUNTER) >= 0x40) && ((COUNTER) <= 0x7F))
69 
70 /**
71   * @}
72   */
73 
74 /**
75   * @}
76   */
77 
78 /* Exported macro ------------------------------------------------------------*/
79 /* Exported functions --------------------------------------------------------*/
80 
81 /*  Function used to set the WWDG configuration to the default reset state ****/
82 void WWDG_DeInit(void);
83 
84 /* Prescaler, Refresh window and Counter configuration functions **************/
85 void WWDG_SetPrescaler(uint32_t WWDG_Prescaler);
86 void WWDG_SetWindowValue(uint8_t WindowValue);
87 void WWDG_EnableIT(void);
88 void WWDG_SetCounter(uint8_t Counter);
89 
90 /* WWDG activation function ***************************************************/
91 void WWDG_Enable(uint8_t Counter);
92 
93 /* Interrupts and flags management functions **********************************/
94 FlagStatus WWDG_GetFlagStatus(void);
95 void WWDG_ClearFlag(void);
96 
97 #ifdef __cplusplus
98 }
99 #endif
100 
101 #endif /* __STM32F4xx_WWDG_H */
102 
103 /**
104   * @}
105   */
106 
107 /**
108   * @}
109   */
110 
111 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
112