fix based on https://gist.github.com/timbrom/1942280
[DSO138] / Libraries / STM32F10x_StdPeriph_Driver / inc / stm32f10x_iwdg.h
1 /**\r
2   ******************************************************************************\r
3   * @file    stm32f10x_iwdg.h\r
4   * @author  MCD Application Team\r
5   * @version V3.3.0\r
6   * @date    04/16/2010\r
7   * @brief   This file contains all the functions prototypes for the IWDG \r
8   *          firmware library.\r
9   ******************************************************************************\r
10   * @copy\r
11   *\r
12   * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS\r
13   * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE\r
14   * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY\r
15   * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING\r
16   * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE\r
17   * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.\r
18   *\r
19   * <h2><center>&copy; COPYRIGHT 2010 STMicroelectronics</center></h2>\r
20   */ \r
21 \r
22 /* Define to prevent recursive inclusion -------------------------------------*/\r
23 #ifndef __STM32F10x_IWDG_H\r
24 #define __STM32F10x_IWDG_H\r
25 \r
26 #ifdef __cplusplus\r
27  extern "C" {\r
28 #endif\r
29 \r
30 /* Includes ------------------------------------------------------------------*/\r
31 #include "stm32f10x.h"\r
32 \r
33 /** @addtogroup STM32F10x_StdPeriph_Driver\r
34   * @{\r
35   */\r
36 \r
37 /** @addtogroup IWDG\r
38   * @{\r
39   */\r
40 \r
41 /** @defgroup IWDG_Exported_Types\r
42   * @{\r
43   */\r
44 \r
45 /**\r
46   * @}\r
47   */\r
48 \r
49 /** @defgroup IWDG_Exported_Constants\r
50   * @{\r
51   */\r
52 \r
53 /** @defgroup IWDG_WriteAccess\r
54   * @{\r
55   */\r
56 \r
57 #define IWDG_WriteAccess_Enable     ((uint16_t)0x5555)\r
58 #define IWDG_WriteAccess_Disable    ((uint16_t)0x0000)\r
59 #define IS_IWDG_WRITE_ACCESS(ACCESS) (((ACCESS) == IWDG_WriteAccess_Enable) || \\r
60                                       ((ACCESS) == IWDG_WriteAccess_Disable))\r
61 /**\r
62   * @}\r
63   */\r
64 \r
65 /** @defgroup IWDG_prescaler \r
66   * @{\r
67   */\r
68 \r
69 #define IWDG_Prescaler_4            ((uint8_t)0x00)\r
70 #define IWDG_Prescaler_8            ((uint8_t)0x01)\r
71 #define IWDG_Prescaler_16           ((uint8_t)0x02)\r
72 #define IWDG_Prescaler_32           ((uint8_t)0x03)\r
73 #define IWDG_Prescaler_64           ((uint8_t)0x04)\r
74 #define IWDG_Prescaler_128          ((uint8_t)0x05)\r
75 #define IWDG_Prescaler_256          ((uint8_t)0x06)\r
76 #define IS_IWDG_PRESCALER(PRESCALER) (((PRESCALER) == IWDG_Prescaler_4)  || \\r
77                                       ((PRESCALER) == IWDG_Prescaler_8)  || \\r
78                                       ((PRESCALER) == IWDG_Prescaler_16) || \\r
79                                       ((PRESCALER) == IWDG_Prescaler_32) || \\r
80                                       ((PRESCALER) == IWDG_Prescaler_64) || \\r
81                                       ((PRESCALER) == IWDG_Prescaler_128)|| \\r
82                                       ((PRESCALER) == IWDG_Prescaler_256))\r
83 /**\r
84   * @}\r
85   */\r
86 \r
87 /** @defgroup IWDG_Flag \r
88   * @{\r
89   */\r
90 \r
91 #define IWDG_FLAG_PVU               ((uint16_t)0x0001)\r
92 #define IWDG_FLAG_RVU               ((uint16_t)0x0002)\r
93 #define IS_IWDG_FLAG(FLAG) (((FLAG) == IWDG_FLAG_PVU) || ((FLAG) == IWDG_FLAG_RVU))\r
94 #define IS_IWDG_RELOAD(RELOAD) ((RELOAD) <= 0xFFF)\r
95 /**\r
96   * @}\r
97   */\r
98 \r
99 /**\r
100   * @}\r
101   */\r
102 \r
103 /** @defgroup IWDG_Exported_Macros\r
104   * @{\r
105   */\r
106 \r
107 /**\r
108   * @}\r
109   */\r
110 \r
111 /** @defgroup IWDG_Exported_Functions\r
112   * @{\r
113   */\r
114 \r
115 void IWDG_WriteAccessCmd(uint16_t IWDG_WriteAccess);\r
116 void IWDG_SetPrescaler(uint8_t IWDG_Prescaler);\r
117 void IWDG_SetReload(uint16_t Reload);\r
118 void IWDG_ReloadCounter(void);\r
119 void IWDG_Enable(void);\r
120 FlagStatus IWDG_GetFlagStatus(uint16_t IWDG_FLAG);\r
121 \r
122 #ifdef __cplusplus\r
123 }\r
124 #endif\r
125 \r
126 #endif /* __STM32F10x_IWDG_H */\r
127 /**\r
128   * @}\r
129   */\r
130 \r
131 /**\r
132   * @}\r
133   */\r
134 \r
135 /**\r
136   * @}\r
137   */\r
138 \r
139 /******************* (C) COPYRIGHT 2010 STMicroelectronics *****END OF FILE****/\r