2
2
******************************************************************************
3
3
* @file stm32f1xx_hal.h
4
4
* @author MCD Application Team
5
- * @version V1.1.1
6
- * @date 12-May-2017
7
- * @brief This file contains all the functions prototypes for the HAL
5
+ * @brief This file contains all the functions prototypes for the HAL
8
6
* module driver.
9
7
******************************************************************************
10
8
* @attention
34
32
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35
33
*
36
34
******************************************************************************
37
- */
35
+ */
38
36
39
37
/* Define to prevent recursive inclusion -------------------------------------*/
40
38
#ifndef __STM32F1xx_HAL_H
41
39
#define __STM32F1xx_HAL_H
42
40
43
41
#ifdef __cplusplus
44
- extern "C" {
42
+ extern "C" {
45
43
#endif
46
44
47
45
/* Includes ------------------------------------------------------------------*/
53
51
54
52
/** @addtogroup HAL
55
53
* @{
56
- */
54
+ */
57
55
58
56
/* Exported types ------------------------------------------------------------*/
59
57
/* Exported constants --------------------------------------------------------*/
60
58
59
+ /** @defgroup HAL_Exported_Constants HAL Exported Constants
60
+ * @{
61
+ */
62
+
63
+ /** @defgroup HAL_TICK_FREQ Tick Frequency
64
+ * @{
65
+ */
66
+ typedef enum
67
+ {
68
+ HAL_TICK_FREQ_10HZ = 100U ,
69
+ HAL_TICK_FREQ_100HZ = 10U ,
70
+ HAL_TICK_FREQ_1KHZ = 1U ,
71
+ HAL_TICK_FREQ_DEFAULT = HAL_TICK_FREQ_1KHZ
72
+ } HAL_TickFreqTypeDef ;
73
+ /**
74
+ * @}
75
+ */
76
+
77
+ /**
78
+ * @}
79
+ */
61
80
/* Exported macro ------------------------------------------------------------*/
62
81
/** @defgroup HAL_Exported_Macros HAL Exported Macros
63
82
* @{
64
83
*/
65
84
66
85
/** @defgroup DBGMCU_Freeze_Unfreeze Freeze Unfreeze Peripherals in Debug mode
67
- * @brief Freeze/Unfreeze Peripherals in Debug mode
86
+ * @brief Freeze/Unfreeze Peripherals in Debug mode
68
87
* Note: On devices STM32F10xx8 and STM32F10xxB,
69
88
* STM32F101xC/D/E and STM32F103xC/D/E,
70
89
* STM32F101xF/G and STM32F103xF/G
71
90
* STM32F10xx4 and STM32F10xx6
72
- * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in
91
+ * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in
73
92
* debug mode (not accessible by the user software in normal mode).
74
93
* Refer to errata sheet of these devices for more details.
75
94
* @{
76
95
*/
77
-
96
+
78
97
/* Peripherals on APB1 */
79
98
/**
80
- * @brief TIM2 Peripherals Debug mode
99
+ * @brief TIM2 Peripherals Debug mode
81
100
*/
82
101
#define __HAL_DBGMCU_FREEZE_TIM2 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM2_STOP)
83
102
#define __HAL_DBGMCU_UNFREEZE_TIM2 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM2_STOP)
84
103
85
104
/**
86
- * @brief TIM3 Peripherals Debug mode
105
+ * @brief TIM3 Peripherals Debug mode
87
106
*/
88
107
#define __HAL_DBGMCU_FREEZE_TIM3 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM3_STOP)
89
108
#define __HAL_DBGMCU_UNFREEZE_TIM3 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM3_STOP)
90
109
91
110
#if defined (DBGMCU_CR_DBG_TIM4_STOP )
92
111
/**
93
- * @brief TIM4 Peripherals Debug mode
112
+ * @brief TIM4 Peripherals Debug mode
94
113
*/
95
114
#define __HAL_DBGMCU_FREEZE_TIM4 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM4_STOP)
96
115
#define __HAL_DBGMCU_UNFREEZE_TIM4 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM4_STOP)
97
116
#endif
98
117
99
118
#if defined (DBGMCU_CR_DBG_TIM5_STOP )
100
119
/**
101
- * @brief TIM5 Peripherals Debug mode
120
+ * @brief TIM5 Peripherals Debug mode
102
121
*/
103
122
#define __HAL_DBGMCU_FREEZE_TIM5 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM5_STOP)
104
123
#define __HAL_DBGMCU_UNFREEZE_TIM5 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM5_STOP)
105
124
#endif
106
125
107
126
#if defined (DBGMCU_CR_DBG_TIM6_STOP )
108
127
/**
109
- * @brief TIM6 Peripherals Debug mode
128
+ * @brief TIM6 Peripherals Debug mode
110
129
*/
111
130
#define __HAL_DBGMCU_FREEZE_TIM6 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM6_STOP)
112
131
#define __HAL_DBGMCU_UNFREEZE_TIM6 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM6_STOP)
113
132
#endif
114
133
115
134
#if defined (DBGMCU_CR_DBG_TIM7_STOP )
116
135
/**
117
- * @brief TIM7 Peripherals Debug mode
136
+ * @brief TIM7 Peripherals Debug mode
118
137
*/
119
138
#define __HAL_DBGMCU_FREEZE_TIM7 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM7_STOP)
120
139
#define __HAL_DBGMCU_UNFREEZE_TIM7 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM7_STOP)
121
140
#endif
122
141
123
142
#if defined (DBGMCU_CR_DBG_TIM12_STOP )
124
143
/**
125
- * @brief TIM12 Peripherals Debug mode
144
+ * @brief TIM12 Peripherals Debug mode
126
145
*/
127
146
#define __HAL_DBGMCU_FREEZE_TIM12 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM12_STOP)
128
147
#define __HAL_DBGMCU_UNFREEZE_TIM12 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM12_STOP)
129
148
#endif
130
149
131
150
#if defined (DBGMCU_CR_DBG_TIM13_STOP )
132
151
/**
133
- * @brief TIM13 Peripherals Debug mode
152
+ * @brief TIM13 Peripherals Debug mode
134
153
*/
135
154
#define __HAL_DBGMCU_FREEZE_TIM13 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM13_STOP)
136
155
#define __HAL_DBGMCU_UNFREEZE_TIM13 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM13_STOP)
137
156
#endif
138
157
139
158
#if defined (DBGMCU_CR_DBG_TIM14_STOP )
140
159
/**
141
- * @brief TIM14 Peripherals Debug mode
160
+ * @brief TIM14 Peripherals Debug mode
142
161
*/
143
162
#define __HAL_DBGMCU_FREEZE_TIM14 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM14_STOP)
144
163
#define __HAL_DBGMCU_UNFREEZE_TIM14 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM14_STOP)
145
164
#endif
146
165
147
166
/**
148
- * @brief WWDG Peripherals Debug mode
167
+ * @brief WWDG Peripherals Debug mode
149
168
*/
150
169
#define __HAL_DBGMCU_FREEZE_WWDG () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_WWDG_STOP)
151
170
#define __HAL_DBGMCU_UNFREEZE_WWDG () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_WWDG_STOP)
152
171
153
172
/**
154
- * @brief IWDG Peripherals Debug mode
173
+ * @brief IWDG Peripherals Debug mode
155
174
*/
156
175
#define __HAL_DBGMCU_FREEZE_IWDG () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_IWDG_STOP)
157
176
#define __HAL_DBGMCU_UNFREEZE_IWDG () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_IWDG_STOP)
158
177
159
178
/**
160
- * @brief I2C1 Peripherals Debug mode
179
+ * @brief I2C1 Peripherals Debug mode
161
180
*/
162
181
#define __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C1_SMBUS_TIMEOUT)
163
182
#define __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C1_SMBUS_TIMEOUT)
164
183
165
184
#if defined (DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT )
166
185
/**
167
- * @brief I2C2 Peripherals Debug mode
186
+ * @brief I2C2 Peripherals Debug mode
168
187
*/
169
188
#define __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT)
170
189
#define __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT)
171
190
#endif
172
191
173
192
#if defined (DBGMCU_CR_DBG_CAN1_STOP )
174
193
/**
175
- * @brief CAN1 Peripherals Debug mode
194
+ * @brief CAN1 Peripherals Debug mode
176
195
*/
177
196
#define __HAL_DBGMCU_FREEZE_CAN1 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN1_STOP)
178
197
#define __HAL_DBGMCU_UNFREEZE_CAN1 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN1_STOP)
179
198
#endif
180
199
181
200
#if defined (DBGMCU_CR_DBG_CAN2_STOP )
182
201
/**
183
- * @brief CAN2 Peripherals Debug mode
202
+ * @brief CAN2 Peripherals Debug mode
184
203
*/
185
204
#define __HAL_DBGMCU_FREEZE_CAN2 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN2_STOP)
186
205
#define __HAL_DBGMCU_UNFREEZE_CAN2 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN2_STOP)
187
- #endif
188
-
206
+ #endif
207
+
189
208
/* Peripherals on APB2 */
190
209
#if defined (DBGMCU_CR_DBG_TIM1_STOP )
191
210
/**
192
- * @brief TIM1 Peripherals Debug mode
211
+ * @brief TIM1 Peripherals Debug mode
193
212
*/
194
213
#define __HAL_DBGMCU_FREEZE_TIM1 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM1_STOP)
195
214
#define __HAL_DBGMCU_UNFREEZE_TIM1 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM1_STOP)
196
215
#endif
197
216
198
217
#if defined (DBGMCU_CR_DBG_TIM8_STOP )
199
218
/**
200
- * @brief TIM8 Peripherals Debug mode
219
+ * @brief TIM8 Peripherals Debug mode
201
220
*/
202
221
#define __HAL_DBGMCU_FREEZE_TIM8 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM8_STOP)
203
222
#define __HAL_DBGMCU_UNFREEZE_TIM8 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM8_STOP)
204
223
#endif
205
224
206
225
#if defined (DBGMCU_CR_DBG_TIM9_STOP )
207
226
/**
208
- * @brief TIM9 Peripherals Debug mode
227
+ * @brief TIM9 Peripherals Debug mode
209
228
*/
210
229
#define __HAL_DBGMCU_FREEZE_TIM9 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM9_STOP)
211
230
#define __HAL_DBGMCU_UNFREEZE_TIM9 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM9_STOP)
212
231
#endif
213
232
214
233
#if defined (DBGMCU_CR_DBG_TIM10_STOP )
215
234
/**
216
- * @brief TIM10 Peripherals Debug mode
235
+ * @brief TIM10 Peripherals Debug mode
217
236
*/
218
237
#define __HAL_DBGMCU_FREEZE_TIM10 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM10_STOP)
219
238
#define __HAL_DBGMCU_UNFREEZE_TIM10 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM10_STOP)
220
239
#endif
221
240
222
241
#if defined (DBGMCU_CR_DBG_TIM11_STOP )
223
242
/**
224
- * @brief TIM11 Peripherals Debug mode
243
+ * @brief TIM11 Peripherals Debug mode
225
244
*/
226
245
#define __HAL_DBGMCU_FREEZE_TIM11 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM11_STOP)
227
246
#define __HAL_DBGMCU_UNFREEZE_TIM11 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM11_STOP)
230
249
231
250
#if defined (DBGMCU_CR_DBG_TIM15_STOP )
232
251
/**
233
- * @brief TIM15 Peripherals Debug mode
252
+ * @brief TIM15 Peripherals Debug mode
234
253
*/
235
254
#define __HAL_DBGMCU_FREEZE_TIM15 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM15_STOP)
236
255
#define __HAL_DBGMCU_UNFREEZE_TIM15 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM15_STOP)
237
256
#endif
238
257
239
258
#if defined (DBGMCU_CR_DBG_TIM16_STOP )
240
259
/**
241
- * @brief TIM16 Peripherals Debug mode
260
+ * @brief TIM16 Peripherals Debug mode
242
261
*/
243
262
#define __HAL_DBGMCU_FREEZE_TIM16 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM16_STOP)
244
263
#define __HAL_DBGMCU_UNFREEZE_TIM16 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM16_STOP)
245
264
#endif
246
265
247
266
#if defined (DBGMCU_CR_DBG_TIM17_STOP )
248
267
/**
249
- * @brief TIM17 Peripherals Debug mode
268
+ * @brief TIM17 Peripherals Debug mode
250
269
*/
251
270
#define __HAL_DBGMCU_FREEZE_TIM17 () SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM17_STOP)
252
271
#define __HAL_DBGMCU_UNFREEZE_TIM17 () CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM17_STOP)
256
275
* @}
257
276
*/
258
277
278
+ /** @defgroup HAL_Private_Macros HAL Private Macros
279
+ * @{
280
+ */
281
+ #define IS_TICKFREQ (FREQ ) (((FREQ) == HAL_TICK_FREQ_10HZ) || \
282
+ ((FREQ) == HAL_TICK_FREQ_100HZ) || \
283
+ ((FREQ) == HAL_TICK_FREQ_1KHZ))
259
284
/**
260
285
* @}
261
286
*/
@@ -272,7 +297,7 @@ HAL_StatusTypeDef HAL_Init(void);
272
297
HAL_StatusTypeDef HAL_DeInit (void );
273
298
void HAL_MspInit (void );
274
299
void HAL_MspDeInit (void );
275
- HAL_StatusTypeDef HAL_InitTick (uint32_t TickPriority );
300
+ HAL_StatusTypeDef HAL_InitTick (uint32_t TickPriority );
276
301
/**
277
302
* @}
278
303
*/
@@ -282,8 +307,11 @@ HAL_StatusTypeDef HAL_InitTick (uint32_t TickPriority);
282
307
*/
283
308
/* Peripheral Control functions ************************************************/
284
309
void HAL_IncTick (void );
285
- void HAL_Delay (__IO uint32_t Delay );
310
+ void HAL_Delay (uint32_t Delay );
286
311
uint32_t HAL_GetTick (void );
312
+ uint32_t HAL_GetTickPrio (void );
313
+ HAL_StatusTypeDef HAL_SetTickFreq (HAL_TickFreqTypeDef Freq );
314
+ HAL_TickFreqTypeDef HAL_GetTickFreq (void );
287
315
void HAL_SuspendTick (void );
288
316
void HAL_ResumeTick (void );
289
317
uint32_t HAL_GetHalVersion (void );
@@ -326,8 +354,8 @@ void HAL_GetUID(uint32_t *UID);
326
354
327
355
/**
328
356
* @}
329
- */
330
-
357
+ */
358
+
331
359
#ifdef __cplusplus
332
360
}
333
361
#endif
0 commit comments