RTEMS 6.1-rc5
Loading...
Searching...
No Matches
stm32h7xx_hal.h
Go to the documentation of this file.
1
20/* Define to prevent recursive inclusion -------------------------------------*/
21#ifndef STM32H7xx_HAL_H
22#define STM32H7xx_HAL_H
23
24#ifdef __cplusplus
25 extern "C" {
26#endif
27
28/* Includes ------------------------------------------------------------------*/
29#include "stm32h7xx_hal_conf.h"
30
39/* Exported types ------------------------------------------------------------*/
44typedef enum
45{
46 HAL_TICK_FREQ_10HZ = 100U,
47 HAL_TICK_FREQ_100HZ = 10U,
48 HAL_TICK_FREQ_1KHZ = 1U,
49 HAL_TICK_FREQ_DEFAULT = HAL_TICK_FREQ_1KHZ
50} HAL_TickFreqTypeDef;
55/* Exported constants --------------------------------------------------------*/
64#define REV_ID_Y ((uint32_t)0x1003)
65#define REV_ID_B ((uint32_t)0x2000)
66#define REV_ID_X ((uint32_t)0x2001)
67#define REV_ID_V ((uint32_t)0x2003)
82#define SYSCFG_VREFBUF_VOLTAGE_SCALE0 VREFBUF_CSR_VRS_OUT1
83#define SYSCFG_VREFBUF_VOLTAGE_SCALE1 VREFBUF_CSR_VRS_OUT2
84#define SYSCFG_VREFBUF_VOLTAGE_SCALE2 VREFBUF_CSR_VRS_OUT3
85#define SYSCFG_VREFBUF_VOLTAGE_SCALE3 VREFBUF_CSR_VRS_OUT4
88#define IS_SYSCFG_VREFBUF_VOLTAGE_SCALE(__SCALE__) (((__SCALE__) == SYSCFG_VREFBUF_VOLTAGE_SCALE0) || \
89 ((__SCALE__) == SYSCFG_VREFBUF_VOLTAGE_SCALE1) || \
90 ((__SCALE__) == SYSCFG_VREFBUF_VOLTAGE_SCALE2) || \
91 ((__SCALE__) == SYSCFG_VREFBUF_VOLTAGE_SCALE3))
92
93
102#define SYSCFG_VREFBUF_HIGH_IMPEDANCE_DISABLE ((uint32_t)0x00000000)
103#define SYSCFG_VREFBUF_HIGH_IMPEDANCE_ENABLE VREFBUF_CSR_HIZ
105#define IS_SYSCFG_VREFBUF_HIGH_IMPEDANCE(__VALUE__) (((__VALUE__) == SYSCFG_VREFBUF_HIGH_IMPEDANCE_DISABLE) || \
106 ((__VALUE__) == SYSCFG_VREFBUF_HIGH_IMPEDANCE_ENABLE))
107
108#define IS_SYSCFG_VREFBUF_TRIMMING(__VALUE__) (((__VALUE__) > 0UL) && ((__VALUE__) <= VREFBUF_CCR_TRIM))
109
114#if !defined(SYSCFG_PMCR_BOOSTEN)
122#define SYSCFG_FASTMODEPLUS_PB6 SYSCFG_PMCR_I2C_PB6_FMP
123#define SYSCFG_FASTMODEPLUS_PB7 SYSCFG_PMCR_I2C_PB7_FMP
124#define SYSCFG_FASTMODEPLUS_PB8 SYSCFG_PMCR_I2C_PB8_FMP
125#define SYSCFG_FASTMODEPLUS_PB9 SYSCFG_PMCR_I2C_PB9_FMP
127#define IS_SYSCFG_FASTMODEPLUS(__PIN__) ((((__PIN__) & SYSCFG_FASTMODEPLUS_PB6) == SYSCFG_FASTMODEPLUS_PB6) || \
128 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB7) == SYSCFG_FASTMODEPLUS_PB7) || \
129 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB8) == SYSCFG_FASTMODEPLUS_PB8) || \
130 (((__PIN__) & SYSCFG_FASTMODEPLUS_PB9) == SYSCFG_FASTMODEPLUS_PB9))
131
135#endif /* ! SYSCFG_PMCR_BOOSTEN */
136
137
138#if defined(SYSCFG_ADC2ALT_ADC2_ROUT0) || defined(SYSCFG_ADC2ALT_ADC2_ROUT1)
146#define SYSCFG_ADC2_ROUT0_DAC1_1 ((uint32_t)0x00000000)
147#define SYSCFG_ADC2_ROUT0_VBAT4 SYSCFG_ADC2ALT_ADC2_ROUT0
148#define SYSCFG_ADC2_ROUT1_DAC1_2 ((uint32_t)0x00000000)
149#define SYSCFG_ADC2_ROUT1_VREFINT SYSCFG_ADC2ALT_ADC2_ROUT1
151#define IS_SYSCFG_ADC2ALT_ROUT0(__VALUE__) (((__VALUE__) == SYSCFG_ADC2_ROUT0_DAC1_1) || \
152 ((__VALUE__) == SYSCFG_ADC2_ROUT0_VBAT4))
153#define IS_SYSCFG_ADC2ALT_ROUT1(__VALUE__) (((__VALUE__) == SYSCFG_ADC2_ROUT1_DAC1_2) || \
154 ((__VALUE__) == SYSCFG_ADC2_ROUT1_VREFINT))
155
159#endif /*SYSCFG_ADC2ALT_ADC2_ROUT0 || SYSCFG_ADC2ALT_ADC2_ROUT1*/
160
161
166#define SYSCFG_ETH_MII ((uint32_t)0x00000000)
167#define SYSCFG_ETH_RMII SYSCFG_PMCR_EPIS_SEL_2
169#define IS_SYSCFG_ETHERNET_CONFIG(CONFIG) (((CONFIG) == SYSCFG_ETH_MII) || \
170 ((CONFIG) == SYSCFG_ETH_RMII))
171
181#define SYSCFG_SWITCH_PA0 SYSCFG_PMCR_PA0SO
182#define SYSCFG_SWITCH_PA1 SYSCFG_PMCR_PA1SO
183#define SYSCFG_SWITCH_PC2 SYSCFG_PMCR_PC2SO
184#define SYSCFG_SWITCH_PC3 SYSCFG_PMCR_PC3SO
189#define SYSCFG_SWITCH_PA0_OPEN SYSCFG_PMCR_PA0SO
190#define SYSCFG_SWITCH_PA0_CLOSE ((uint32_t)0x00000000)
191#define SYSCFG_SWITCH_PA1_OPEN SYSCFG_PMCR_PA1SO
192#define SYSCFG_SWITCH_PA1_CLOSE ((uint32_t)0x00000000)
193#define SYSCFG_SWITCH_PC2_OPEN SYSCFG_PMCR_PC2SO
194#define SYSCFG_SWITCH_PC2_CLOSE ((uint32_t)0x00000000)
195#define SYSCFG_SWITCH_PC3_OPEN SYSCFG_PMCR_PC3SO
196#define SYSCFG_SWITCH_PC3_CLOSE ((uint32_t)0x00000000)
202#define IS_SYSCFG_ANALOG_SWITCH(SWITCH) ((((SWITCH) & SYSCFG_SWITCH_PA0) == SYSCFG_SWITCH_PA0)|| \
203 (((SWITCH) & SYSCFG_SWITCH_PA1) == SYSCFG_SWITCH_PA1) || \
204 (((SWITCH) & SYSCFG_SWITCH_PC2) == SYSCFG_SWITCH_PC2) || \
205 (((SWITCH) & SYSCFG_SWITCH_PC3) == SYSCFG_SWITCH_PC3))
206
207
208#define IS_SYSCFG_SWITCH_STATE(STATE) ((((STATE) & SYSCFG_SWITCH_PA0_OPEN) == SYSCFG_SWITCH_PA0_OPEN) || \
209 (((STATE) & SYSCFG_SWITCH_PA0_CLOSE) == SYSCFG_SWITCH_PA0_CLOSE) || \
210 (((STATE) & SYSCFG_SWITCH_PA1_OPEN) == SYSCFG_SWITCH_PA1_OPEN) || \
211 (((STATE) & SYSCFG_SWITCH_PA1_CLOSE) == SYSCFG_SWITCH_PA1_CLOSE) || \
212 (((STATE) & SYSCFG_SWITCH_PC2_OPEN) == SYSCFG_SWITCH_PC2_OPEN) || \
213 (((STATE) & SYSCFG_SWITCH_PC2_CLOSE) == SYSCFG_SWITCH_PC2_CLOSE) || \
214 (((STATE) & SYSCFG_SWITCH_PC3_OPEN) == SYSCFG_SWITCH_PC3_OPEN) || \
215 (((STATE) & SYSCFG_SWITCH_PC3_CLOSE) == SYSCFG_SWITCH_PC3_CLOSE))
216
217
222#define SYSCFG_BOOT_ADDR0 ((uint32_t)0x00000000)
223#define SYSCFG_BOOT_ADDR1 ((uint32_t)0x00000001)
225#define IS_SYSCFG_BOOT_REGISTER(REGISTER) (((REGISTER) == SYSCFG_BOOT_ADDR0)|| \
226 ((REGISTER) == SYSCFG_BOOT_ADDR1))
227
228#define IS_SYSCFG_BOOT_ADDRESS(ADDRESS) ((ADDRESS) < PERIPH_BASE)
229
239#define SYSCFG_CELL_CODE ((uint32_t)0x00000000)
240#define SYSCFG_REGISTER_CODE SYSCFG_CCCSR_CS
242#define IS_SYSCFG_CODE_SELECT(SELECT) (((SELECT) == SYSCFG_CELL_CODE)|| \
243 ((SELECT) == SYSCFG_REGISTER_CODE))
244
245#define IS_SYSCFG_CODE_CONFIG(CONFIG) ((CONFIG) < (0x10UL))
246
261#define EXTI_MODE_IT ((uint32_t)0x00010000)
262#define EXTI_MODE_EVT ((uint32_t)0x00020000)
263#define EXTI_RISING_EDGE ((uint32_t)0x00100000)
264#define EXTI_FALLING_EDGE ((uint32_t)0x00200000)
265
266#define IS_EXTI_EDGE_LINE(EDGE) (((EDGE) == EXTI_RISING_EDGE) || ((EDGE) == EXTI_FALLING_EDGE))
267#define IS_EXTI_MODE_LINE(MODE) (((MODE) == EXTI_MODE_IT) || ((MODE) == EXTI_MODE_EVT))
268
269#define EXTI_LINE0 ((uint32_t)0x00)
270#define EXTI_LINE1 ((uint32_t)0x01)
271#define EXTI_LINE2 ((uint32_t)0x02)
272#define EXTI_LINE3 ((uint32_t)0x03)
273#define EXTI_LINE4 ((uint32_t)0x04)
274#define EXTI_LINE5 ((uint32_t)0x05)
275#define EXTI_LINE6 ((uint32_t)0x06)
276#define EXTI_LINE7 ((uint32_t)0x07)
277#define EXTI_LINE8 ((uint32_t)0x08)
278#define EXTI_LINE9 ((uint32_t)0x09)
279#define EXTI_LINE10 ((uint32_t)0x0A)
280#define EXTI_LINE11 ((uint32_t)0x0B)
281#define EXTI_LINE12 ((uint32_t)0x0C)
282#define EXTI_LINE13 ((uint32_t)0x0D)
283#define EXTI_LINE14 ((uint32_t)0x0E)
284#define EXTI_LINE15 ((uint32_t)0x0F)
285#define EXTI_LINE16 ((uint32_t)0x10)
286#define EXTI_LINE17 ((uint32_t)0x11)
287#define EXTI_LINE18 ((uint32_t)0x12)
288#define EXTI_LINE19 ((uint32_t)0x13)
289#define EXTI_LINE20 ((uint32_t)0x14)
290#define EXTI_LINE21 ((uint32_t)0x15)
291#define EXTI_LINE22 ((uint32_t)0x16)
292#define EXTI_LINE23 ((uint32_t)0x17)
293#define EXTI_LINE24 ((uint32_t)0x18)
294#define EXTI_LINE25 ((uint32_t)0x19)
295#define EXTI_LINE26 ((uint32_t)0x1A)
296#define EXTI_LINE27 ((uint32_t)0x1B)
297#define EXTI_LINE28 ((uint32_t)0x1C)
298#define EXTI_LINE29 ((uint32_t)0x1D)
299#define EXTI_LINE30 ((uint32_t)0x1E)
300#define EXTI_LINE31 ((uint32_t)0x1F)
301#define EXTI_LINE32 ((uint32_t)0x20)
302#define EXTI_LINE33 ((uint32_t)0x21)
303#define EXTI_LINE34 ((uint32_t)0x22)
304#define EXTI_LINE35 ((uint32_t)0x23)
305#define EXTI_LINE36 ((uint32_t)0x24)
306#define EXTI_LINE37 ((uint32_t)0x25)
307#define EXTI_LINE38 ((uint32_t)0x26)
308#define EXTI_LINE39 ((uint32_t)0x27)
309
310#define EXTI_LINE40 ((uint32_t)0x28)
311#define EXTI_LINE41 ((uint32_t)0x29)
312#define EXTI_LINE42 ((uint32_t)0x2A)
313#define EXTI_LINE43 ((uint32_t)0x2B)
314#define EXTI_LINE44 ((uint32_t)0x2C) /* Not available in all family lines */
315/* EXTI_LINE45 Reserved */
316#if defined(DUAL_CORE)
317#define EXTI_LINE46 ((uint32_t)0x2E)
318#else
319/* EXTI_LINE46 Reserved */
320#endif /* DUAL_CORE */
321#define EXTI_LINE47 ((uint32_t)0x2F)
322#define EXTI_LINE48 ((uint32_t)0x30)
323#define EXTI_LINE49 ((uint32_t)0x31)
324#define EXTI_LINE50 ((uint32_t)0x32)
325#define EXTI_LINE51 ((uint32_t)0x33)
326#define EXTI_LINE52 ((uint32_t)0x34)
327#define EXTI_LINE53 ((uint32_t)0x35)
328#define EXTI_LINE54 ((uint32_t)0x36)
329#define EXTI_LINE55 ((uint32_t)0x37)
330#define EXTI_LINE56 ((uint32_t)0x38)
331#define EXTI_LINE57 ((uint32_t)0x39)
332#define EXTI_LINE58 ((uint32_t)0x3A)
333#define EXTI_LINE59 ((uint32_t)0x3B)
334#define EXTI_LINE60 ((uint32_t)0x3C)
335#define EXTI_LINE61 ((uint32_t)0x3D)
336#define EXTI_LINE62 ((uint32_t)0x3E)
337#define EXTI_LINE63 ((uint32_t)0x3F)
338#define EXTI_LINE64 ((uint32_t)0x40)
339#define EXTI_LINE65 ((uint32_t)0x41)
340#define EXTI_LINE66 ((uint32_t)0x42)
341#define EXTI_LINE67 ((uint32_t)0x43)
342#define EXTI_LINE68 ((uint32_t)0x44)
343#define EXTI_LINE69 ((uint32_t)0x45)
344#define EXTI_LINE70 ((uint32_t)0x46)
345#define EXTI_LINE71 ((uint32_t)0x47)
346#define EXTI_LINE72 ((uint32_t)0x48)
347#define EXTI_LINE73 ((uint32_t)0x49)
348#define EXTI_LINE74 ((uint32_t)0x4A)
349#define EXTI_LINE75 ((uint32_t)0x4B) /* Not available in all family lines */
350#define EXTI_LINE76 ((uint32_t)0x4C) /* Not available in all family lines */
351#if defined(DUAL_CORE)
352#define EXTI_LINE77 ((uint32_t)0x4D)
353#define EXTI_LINE78 ((uint32_t)0x4E)
354#define EXTI_LINE79 ((uint32_t)0x4F)
355#define EXTI_LINE80 ((uint32_t)0x50)
356#else
357/* EXTI_LINE77 Reserved */
358/* EXTI_LINE78 Reserved */
359/* EXTI_LINE79 Reserved */
360/* EXTI_LINE80 Reserved */
361#endif /* DUAL_CORE */
362/* EXTI_LINE81 Reserved */
363#if defined(DUAL_CORE)
364#define EXTI_LINE82 ((uint32_t)0x52)
365#else
366/* EXTI_LINE82 Reserved */
367#endif /* DUAL_CORE */
368/* EXTI_LINE83 Reserved */
369#if defined(DUAL_CORE)
370#define EXTI_LINE84 ((uint32_t)0x54)
371#else
372/* EXTI_LINE84 Reserved */
373#endif /* DUAL_CORE */
374#define EXTI_LINE85 ((uint32_t)0x55)
375#define EXTI_LINE86 ((uint32_t)0x56) /* Not available in all family lines */
376#define EXTI_LINE87 ((uint32_t)0x57)
377#define EXTI_LINE88 ((uint32_t)0x58) /* Not available in all family lines */
378#define EXTI_LINE89 ((uint32_t)0x59) /* Not available in all family lines */
379#define EXTI_LINE90 ((uint32_t)0x5A) /* Not available in all family lines */
380#define EXTI_LINE91 ((uint32_t)0x5B) /* Not available in all family lines */
381
382#if defined(DUAL_CORE)
383#define IS_HAL_EXTI_CONFIG_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
384 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
385 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
386 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
387 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
388 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
389 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
390 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
391 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
392 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
393 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
394 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE51) || \
395 ((LINE) == EXTI_LINE82) || ((LINE) == EXTI_LINE84) || \
396 ((LINE) == EXTI_LINE85) || ((LINE) == EXTI_LINE86))
397#else
398#define IS_HAL_EXTI_CONFIG_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1)|| \
399 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
400 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
401 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
402 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
403 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
404 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
405 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
406 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
407 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
408 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
409 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE51) || \
410 ((LINE) == EXTI_LINE85) || ((LINE) == EXTI_LINE86))
411#endif /* DUAL_CORE */
412
413#if defined(DUAL_CORE)
414#define IS_EXTI_ALL_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
415 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
416 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
417 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
418 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
419 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
420 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
421 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
422 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
423 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
424 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
425 ((LINE) == EXTI_LINE22) || ((LINE) == EXTI_LINE23) || \
426 ((LINE) == EXTI_LINE24) || ((LINE) == EXTI_LINE25) || \
427 ((LINE) == EXTI_LINE26) || ((LINE) == EXTI_LINE27) || \
428 ((LINE) == EXTI_LINE28) || ((LINE) == EXTI_LINE29) || \
429 ((LINE) == EXTI_LINE30) || ((LINE) == EXTI_LINE31) || \
430 ((LINE) == EXTI_LINE32) || ((LINE) == EXTI_LINE33) || \
431 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
432 ((LINE) == EXTI_LINE36) || ((LINE) == EXTI_LINE37) || \
433 ((LINE) == EXTI_LINE38) || ((LINE) == EXTI_LINE39) || \
434 ((LINE) == EXTI_LINE40) || ((LINE) == EXTI_LINE41) || \
435 ((LINE) == EXTI_LINE42) || ((LINE) == EXTI_LINE43) || \
436 ((LINE) == EXTI_LINE44) || ((LINE) == EXTI_LINE46) || \
437 ((LINE) == EXTI_LINE47) || ((LINE) == EXTI_LINE48) || \
438 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
439 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
440 ((LINE) == EXTI_LINE53) || ((LINE) == EXTI_LINE54) || \
441 ((LINE) == EXTI_LINE55) || ((LINE) == EXTI_LINE56) || \
442 ((LINE) == EXTI_LINE57) || ((LINE) == EXTI_LINE58) || \
443 ((LINE) == EXTI_LINE59) || ((LINE) == EXTI_LINE60) || \
444 ((LINE) == EXTI_LINE61) || ((LINE) == EXTI_LINE62) || \
445 ((LINE) == EXTI_LINE63) || ((LINE) == EXTI_LINE64) || \
446 ((LINE) == EXTI_LINE65) || ((LINE) == EXTI_LINE66) || \
447 ((LINE) == EXTI_LINE67) || ((LINE) == EXTI_LINE68) || \
448 ((LINE) == EXTI_LINE69) || ((LINE) == EXTI_LINE70) || \
449 ((LINE) == EXTI_LINE71) || ((LINE) == EXTI_LINE72) || \
450 ((LINE) == EXTI_LINE73) || ((LINE) == EXTI_LINE74) || \
451 ((LINE) == EXTI_LINE75) || ((LINE) == EXTI_LINE76) || \
452 ((LINE) == EXTI_LINE77) || ((LINE) == EXTI_LINE79) || \
453 ((LINE) == EXTI_LINE84) || ((LINE) == EXTI_LINE85) || \
454 ((LINE) == EXTI_LINE86) || ((LINE) == EXTI_LINE87) || \
455 ((LINE) == EXTI_LINE78) || \
456 ((LINE) == EXTI_LINE80) || ((LINE) == EXTI_LINE82))
457#else
458#define IS_EXTI_ALL_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
459 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
460 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
461 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
462 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
463 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
464 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
465 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
466 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
467 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
468 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
469 ((LINE) == EXTI_LINE22) || ((LINE) == EXTI_LINE23) || \
470 ((LINE) == EXTI_LINE24) || ((LINE) == EXTI_LINE25) || \
471 ((LINE) == EXTI_LINE26) || ((LINE) == EXTI_LINE27) || \
472 ((LINE) == EXTI_LINE28) || ((LINE) == EXTI_LINE29) || \
473 ((LINE) == EXTI_LINE30) || ((LINE) == EXTI_LINE31) || \
474 ((LINE) == EXTI_LINE32) || ((LINE) == EXTI_LINE33) || \
475 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
476 ((LINE) == EXTI_LINE36) || ((LINE) == EXTI_LINE37) || \
477 ((LINE) == EXTI_LINE38) || ((LINE) == EXTI_LINE39) || \
478 ((LINE) == EXTI_LINE40) || ((LINE) == EXTI_LINE41) || \
479 ((LINE) == EXTI_LINE42) || ((LINE) == EXTI_LINE43) || \
480 ((LINE) == EXTI_LINE44) || \
481 ((LINE) == EXTI_LINE47) || ((LINE) == EXTI_LINE48) || \
482 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
483 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
484 ((LINE) == EXTI_LINE53) || ((LINE) == EXTI_LINE54) || \
485 ((LINE) == EXTI_LINE55) || ((LINE) == EXTI_LINE56) || \
486 ((LINE) == EXTI_LINE57) || ((LINE) == EXTI_LINE58) || \
487 ((LINE) == EXTI_LINE59) || ((LINE) == EXTI_LINE60) || \
488 ((LINE) == EXTI_LINE61) || ((LINE) == EXTI_LINE62) || \
489 ((LINE) == EXTI_LINE63) || ((LINE) == EXTI_LINE64) || \
490 ((LINE) == EXTI_LINE65) || ((LINE) == EXTI_LINE66) || \
491 ((LINE) == EXTI_LINE67) || ((LINE) == EXTI_LINE68) || \
492 ((LINE) == EXTI_LINE69) || ((LINE) == EXTI_LINE70) || \
493 ((LINE) == EXTI_LINE71) || ((LINE) == EXTI_LINE72) || \
494 ((LINE) == EXTI_LINE73) || ((LINE) == EXTI_LINE74) || \
495 ((LINE) == EXTI_LINE75) || ((LINE) == EXTI_LINE76) || \
496 ((LINE) == EXTI_LINE85) || \
497 ((LINE) == EXTI_LINE86) || ((LINE) == EXTI_LINE87) || \
498 ((LINE) == EXTI_LINE88) || ((LINE) == EXTI_LINE89) || \
499 ((LINE) == EXTI_LINE90) || ((LINE) == EXTI_LINE91))
500#endif /*DUAL_CORE*/
501
502#if defined(DUAL_CORE)
503#define IS_EXTI_D1_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
504 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
505 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
506 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
507 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
508 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
509 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
510 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
511 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
512 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
513 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
514 ((LINE) == EXTI_LINE22) || ((LINE) == EXTI_LINE23) || \
515 ((LINE) == EXTI_LINE24) || ((LINE) == EXTI_LINE25) || \
516 ((LINE) == EXTI_LINE26) || ((LINE) == EXTI_LINE27) || \
517 ((LINE) == EXTI_LINE28) || ((LINE) == EXTI_LINE29) || \
518 ((LINE) == EXTI_LINE30) || ((LINE) == EXTI_LINE31) || \
519 ((LINE) == EXTI_LINE32) || ((LINE) == EXTI_LINE33) || \
520 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
521 ((LINE) == EXTI_LINE36) || ((LINE) == EXTI_LINE37) || \
522 ((LINE) == EXTI_LINE38) || ((LINE) == EXTI_LINE39) || \
523 ((LINE) == EXTI_LINE40) || ((LINE) == EXTI_LINE41) || \
524 ((LINE) == EXTI_LINE42) || ((LINE) == EXTI_LINE43) || \
525 ((LINE) == EXTI_LINE44) || ((LINE) == EXTI_LINE46) || \
526 ((LINE) == EXTI_LINE47) || ((LINE) == EXTI_LINE48) || \
527 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
528 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
529 ((LINE) == EXTI_LINE53) || ((LINE) == EXTI_LINE54) || \
530 ((LINE) == EXTI_LINE55) || ((LINE) == EXTI_LINE56) || \
531 ((LINE) == EXTI_LINE57) || ((LINE) == EXTI_LINE58) || \
532 ((LINE) == EXTI_LINE59) || ((LINE) == EXTI_LINE60) || \
533 ((LINE) == EXTI_LINE61) || ((LINE) == EXTI_LINE62) || \
534 ((LINE) == EXTI_LINE63) || ((LINE) == EXTI_LINE64) || \
535 ((LINE) == EXTI_LINE65) || ((LINE) == EXTI_LINE66) || \
536 ((LINE) == EXTI_LINE67) || ((LINE) == EXTI_LINE68) || \
537 ((LINE) == EXTI_LINE69) || ((LINE) == EXTI_LINE70) || \
538 ((LINE) == EXTI_LINE71) || ((LINE) == EXTI_LINE72) || \
539 ((LINE) == EXTI_LINE73) || ((LINE) == EXTI_LINE74) || \
540 ((LINE) == EXTI_LINE75) || ((LINE) == EXTI_LINE76) || \
541 ((LINE) == EXTI_LINE77) || ((LINE) == EXTI_LINE79) || \
542 ((LINE) == EXTI_LINE84) || ((LINE) == EXTI_LINE85) || \
543 ((LINE) == EXTI_LINE86) || ((LINE) == EXTI_LINE87))
544#else
545#define IS_EXTI_D1_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
546 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
547 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
548 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
549 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
550 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
551 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
552 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
553 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
554 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
555 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
556 ((LINE) == EXTI_LINE22) || ((LINE) == EXTI_LINE23) || \
557 ((LINE) == EXTI_LINE24) || ((LINE) == EXTI_LINE25) || \
558 ((LINE) == EXTI_LINE26) || ((LINE) == EXTI_LINE27) || \
559 ((LINE) == EXTI_LINE28) || ((LINE) == EXTI_LINE29) || \
560 ((LINE) == EXTI_LINE30) || ((LINE) == EXTI_LINE31) || \
561 ((LINE) == EXTI_LINE32) || ((LINE) == EXTI_LINE33) || \
562 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
563 ((LINE) == EXTI_LINE36) || ((LINE) == EXTI_LINE37) || \
564 ((LINE) == EXTI_LINE38) || ((LINE) == EXTI_LINE39) || \
565 ((LINE) == EXTI_LINE40) || ((LINE) == EXTI_LINE41) || \
566 ((LINE) == EXTI_LINE42) || ((LINE) == EXTI_LINE43) || \
567 ((LINE) == EXTI_LINE44) || \
568 ((LINE) == EXTI_LINE47) || ((LINE) == EXTI_LINE48) || \
569 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
570 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
571 ((LINE) == EXTI_LINE53) || ((LINE) == EXTI_LINE54) || \
572 ((LINE) == EXTI_LINE55) || ((LINE) == EXTI_LINE56) || \
573 ((LINE) == EXTI_LINE57) || ((LINE) == EXTI_LINE58) || \
574 ((LINE) == EXTI_LINE59) || ((LINE) == EXTI_LINE60) || \
575 ((LINE) == EXTI_LINE61) || ((LINE) == EXTI_LINE62) || \
576 ((LINE) == EXTI_LINE63) || ((LINE) == EXTI_LINE64) || \
577 ((LINE) == EXTI_LINE65) || ((LINE) == EXTI_LINE66) || \
578 ((LINE) == EXTI_LINE67) || ((LINE) == EXTI_LINE68) || \
579 ((LINE) == EXTI_LINE69) || ((LINE) == EXTI_LINE70) || \
580 ((LINE) == EXTI_LINE71) || ((LINE) == EXTI_LINE72) || \
581 ((LINE) == EXTI_LINE73) || ((LINE) == EXTI_LINE74) || \
582 ((LINE) == EXTI_LINE75) || ((LINE) == EXTI_LINE76) || \
583 ((LINE) == EXTI_LINE85) || \
584 ((LINE) == EXTI_LINE86) || ((LINE) == EXTI_LINE87) || \
585 ((LINE) == EXTI_LINE88) || ((LINE) == EXTI_LINE89) || \
586 ((LINE) == EXTI_LINE90) || ((LINE) == EXTI_LINE91))
587#endif /*DUAL_CORE*/
588
589#if defined(DUAL_CORE)
590#define IS_EXTI_D2_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
591 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
592 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
593 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
594 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
595 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
596 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
597 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
598 ((LINE) == EXTI_LINE16) || ((LINE) == EXTI_LINE17) || \
599 ((LINE) == EXTI_LINE18) || ((LINE) == EXTI_LINE19) || \
600 ((LINE) == EXTI_LINE20) || ((LINE) == EXTI_LINE21) || \
601 ((LINE) == EXTI_LINE22) || ((LINE) == EXTI_LINE23) || \
602 ((LINE) == EXTI_LINE24) || ((LINE) == EXTI_LINE25) || \
603 ((LINE) == EXTI_LINE26) || ((LINE) == EXTI_LINE27) || \
604 ((LINE) == EXTI_LINE28) || ((LINE) == EXTI_LINE29) || \
605 ((LINE) == EXTI_LINE30) || ((LINE) == EXTI_LINE31) || \
606 ((LINE) == EXTI_LINE32) || ((LINE) == EXTI_LINE33) || \
607 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
608 ((LINE) == EXTI_LINE36) || ((LINE) == EXTI_LINE37) || \
609 ((LINE) == EXTI_LINE38) || ((LINE) == EXTI_LINE39) || \
610 ((LINE) == EXTI_LINE40) || ((LINE) == EXTI_LINE41) || \
611 ((LINE) == EXTI_LINE42) || ((LINE) == EXTI_LINE43) || \
612 ((LINE) == EXTI_LINE44) || ((LINE) == EXTI_LINE46) || \
613 ((LINE) == EXTI_LINE47) || ((LINE) == EXTI_LINE48) || \
614 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
615 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
616 ((LINE) == EXTI_LINE53) || ((LINE) == EXTI_LINE54) || \
617 ((LINE) == EXTI_LINE55) || ((LINE) == EXTI_LINE56) || \
618 ((LINE) == EXTI_LINE57) || ((LINE) == EXTI_LINE58) || \
619 ((LINE) == EXTI_LINE59) || ((LINE) == EXTI_LINE60) || \
620 ((LINE) == EXTI_LINE61) || ((LINE) == EXTI_LINE62) || \
621 ((LINE) == EXTI_LINE63) || ((LINE) == EXTI_LINE64) || \
622 ((LINE) == EXTI_LINE65) || ((LINE) == EXTI_LINE66) || \
623 ((LINE) == EXTI_LINE67) || ((LINE) == EXTI_LINE68) || \
624 ((LINE) == EXTI_LINE69) || ((LINE) == EXTI_LINE70) || \
625 ((LINE) == EXTI_LINE71) || ((LINE) == EXTI_LINE72) || \
626 ((LINE) == EXTI_LINE73) || ((LINE) == EXTI_LINE74) || \
627 ((LINE) == EXTI_LINE75) || ((LINE) == EXTI_LINE76) || \
628 ((LINE) == EXTI_LINE78) || ((LINE) == EXTI_LINE80) || \
629 ((LINE) == EXTI_LINE82) || ((LINE) == EXTI_LINE85) || \
630 ((LINE) == EXTI_LINE86) || ((LINE) == EXTI_LINE87))
631#endif /*DUAL_CORE*/
632
633#if defined(DUAL_CORE)
634#define IS_EXTI_D3_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
635 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
636 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
637 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
638 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
639 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
640 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
641 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
642 ((LINE) == EXTI_LINE19) || ((LINE) == EXTI_LINE20) || \
643 ((LINE) == EXTI_LINE21) || ((LINE) == EXTI_LINE25) || \
644 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
645 ((LINE) == EXTI_LINE41) || ((LINE) == EXTI_LINE48) || \
646 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
647 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
648 ((LINE) == EXTI_LINE53))
649#elif (POWER_DOMAINS_NUMBER == 3U)
650#define IS_EXTI_D3_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
651 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
652 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
653 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
654 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
655 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
656 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
657 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
658 ((LINE) == EXTI_LINE19) || ((LINE) == EXTI_LINE20) || \
659 ((LINE) == EXTI_LINE21) || ((LINE) == EXTI_LINE25) || \
660 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
661 ((LINE) == EXTI_LINE41) || ((LINE) == EXTI_LINE48) || \
662 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
663 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE52) || \
664 ((LINE) == EXTI_LINE53) || ((LINE) == EXTI_LINE88))
665#else
666#define IS_EXTI_D3_LINE(LINE) (((LINE) == EXTI_LINE0) || ((LINE) == EXTI_LINE1) || \
667 ((LINE) == EXTI_LINE2) || ((LINE) == EXTI_LINE3) || \
668 ((LINE) == EXTI_LINE4) || ((LINE) == EXTI_LINE5) || \
669 ((LINE) == EXTI_LINE6) || ((LINE) == EXTI_LINE7) || \
670 ((LINE) == EXTI_LINE8) || ((LINE) == EXTI_LINE9) || \
671 ((LINE) == EXTI_LINE10) || ((LINE) == EXTI_LINE11) || \
672 ((LINE) == EXTI_LINE12) || ((LINE) == EXTI_LINE13) || \
673 ((LINE) == EXTI_LINE14) || ((LINE) == EXTI_LINE15) || \
674 ((LINE) == EXTI_LINE19) || ((LINE) == EXTI_LINE20) || \
675 ((LINE) == EXTI_LINE21) || ((LINE) == EXTI_LINE25) || \
676 ((LINE) == EXTI_LINE34) || ((LINE) == EXTI_LINE35) || \
677 ((LINE) == EXTI_LINE41) || ((LINE) == EXTI_LINE48) || \
678 ((LINE) == EXTI_LINE49) || ((LINE) == EXTI_LINE50) || \
679 ((LINE) == EXTI_LINE51) || ((LINE) == EXTI_LINE88))
680#endif /*DUAL_CORE*/
681
682
683#define BDMA_CH6_CLEAR ((uint32_t)0x00000000)
684#define BDMA_CH7_CLEAR ((uint32_t)0x00000001)
685#if defined (LPTIM4)
686#define LPTIM4_OUT_CLEAR ((uint32_t)0x00000002)
687#else
688#define LPTIM2_OUT_CLEAR ((uint32_t)0x00000002)
689#endif /* LPTIM4 */
690#if defined (LPTIM5)
691#define LPTIM5_OUT_CLEAR ((uint32_t)0x00000003)
692#else
693#define LPTIM3_OUT_CLEAR ((uint32_t)0x00000003)
694#endif /* LPTIM5 */
695#if defined (LPTIM4) && defined (LPTIM5)
696#define IS_EXTI_D3_CLEAR(SOURCE) (((SOURCE) == BDMA_CH6_CLEAR) || ((SOURCE) == BDMA_CH7_CLEAR) || \
697 ((SOURCE) == LPTIM4_OUT_CLEAR) || ((SOURCE) == LPTIM5_OUT_CLEAR))
698#else
699#define IS_EXTI_D3_CLEAR(SOURCE) (((SOURCE) == BDMA_CH6_CLEAR) || ((SOURCE) == BDMA_CH7_CLEAR) || \
700 ((SOURCE) == LPTIM2_OUT_CLEAR) || ((SOURCE) == LPTIM3_OUT_CLEAR))
701#endif /* LPTIM4 LPTIM5 */
711#define FMC_SWAPBMAP_DISABLE (0x00000000U)
712#define FMC_SWAPBMAP_SDRAM_SRAM FMC_BCR1_BMAP_0
713#define FMC_SWAPBMAP_SDRAMB2 FMC_BCR1_BMAP_1
714
715#define IS_FMC_SWAPBMAP_MODE(__MODE__) (((__MODE__) == FMC_SWAPBMAP_DISABLE) || \
716 ((__MODE__) == FMC_SWAPBMAP_SDRAM_SRAM) || \
717 ((__MODE__) == FMC_SWAPBMAP_SDRAMB2))
725/* Exported macro ------------------------------------------------------------*/
730#if defined(DUAL_CORE)
739#define __HAL_ART_ENABLE() SET_BIT(ART->CTR, ART_CTR_EN)
740
744#define __HAL_ART_DISABLE() CLEAR_BIT(ART->CTR, ART_CTR_EN)
745
749#define __HAL_ART_CONFIG_BASE_ADDRESS(__BASE_ADDRESS__) MODIFY_REG(ART->CTR, ART_CTR_PCACHEADDR, (((__BASE_ADDRESS__) >> 12U) & 0x000FFF00UL))
750
754#endif /* DUAL_CORE */
755
766#define __HAL_SYSCFG_BREAK_AXISRAM_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_AXISRAML)
767
773#define __HAL_SYSCFG_BREAK_ITCM_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_ITCML)
774
780#define __HAL_SYSCFG_BREAK_DTCM_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_DTCML)
781
787#define __HAL_SYSCFG_BREAK_SRAM1_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_SRAM1L)
788
794#define __HAL_SYSCFG_BREAK_SRAM2_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_SRAM2L)
795
801#define __HAL_SYSCFG_BREAK_SRAM3_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_SRAM3L)
802
808#define __HAL_SYSCFG_BREAK_SRAM4_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_SRAM4L)
809
815#define __HAL_SYSCFG_BREAK_BKRAM_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_BKRAML)
816
822#define __HAL_SYSCFG_BREAK_CM7_LOCKUP_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_CM7L)
823
829#define __HAL_SYSCFG_BREAK_FLASH_DBL_ECC_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_FLASHL)
830
836#define __HAL_SYSCFG_BREAK_PVD_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_PVDL)
837
838#if defined(DUAL_CORE)
844#define __HAL_SYSCFG_BREAK_CM4_LOCKUP_LOCK() SET_BIT(SYSCFG->CFGR, SYSCFG_CFGR_CM4L)
845#endif /* DUAL_CORE */
846
847#if !defined(SYSCFG_PMCR_BOOSTEN)
855#define __HAL_SYSCFG_FASTMODEPLUS_ENABLE(__FASTMODEPLUS__) do {assert_param(IS_SYSCFG_FASTMODEPLUS((__FASTMODEPLUS__)));\
856 SET_BIT(SYSCFG->PMCR, (__FASTMODEPLUS__));\
857 }while(0)
858
859#define __HAL_SYSCFG_FASTMODEPLUS_DISABLE(__FASTMODEPLUS__) do {assert_param(IS_SYSCFG_FASTMODEPLUS((__FASTMODEPLUS__)));\
860 CLEAR_BIT(SYSCFG->PMCR, (__FASTMODEPLUS__));\
861 }while(0)
862
863#endif /* !SYSCFG_PMCR_BOOSTEN */
875#define __HAL_DBGMCU_FREEZE_WWDG1() (DBGMCU->APB3FZ1 |= (DBGMCU_APB3FZ1_DBG_WWDG1))
876
877#define __HAL_DBGMCU_FREEZE_TIM2() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM2))
878#define __HAL_DBGMCU_FREEZE_TIM3() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM3))
879#define __HAL_DBGMCU_FREEZE_TIM4() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM4))
880#define __HAL_DBGMCU_FREEZE_TIM5() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM5))
881#define __HAL_DBGMCU_FREEZE_TIM6() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM6))
882#define __HAL_DBGMCU_FREEZE_TIM7() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM7))
883#define __HAL_DBGMCU_FREEZE_TIM12() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM12))
884#define __HAL_DBGMCU_FREEZE_TIM13() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM13))
885#define __HAL_DBGMCU_FREEZE_TIM14() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_TIM14))
886#define __HAL_DBGMCU_FREEZE_LPTIM1() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_LPTIM1))
887#define __HAL_DBGMCU_FREEZE_I2C1() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_I2C1))
888#define __HAL_DBGMCU_FREEZE_I2C2() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_I2C2))
889#define __HAL_DBGMCU_FREEZE_I2C3() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_I2C3))
890#if defined(I2C5)
891#define __HAL_DBGMCU_FREEZE_I2C5() (DBGMCU->APB1LFZ1 |= (DBGMCU_APB1LFZ1_DBG_I2C5))
892#endif /*I2C5*/
893#if defined(DBGMCU_APB1HFZ1_DBG_FDCAN)
894#define __HAL_DBGMCU_FREEZE_FDCAN() (DBGMCU->APB1HFZ1 |= (DBGMCU_APB1HFZ1_DBG_FDCAN))
895#endif /*DBGMCU_APB1HFZ1_DBG_FDCAN*/
896
897#if defined(TIM23)
898#define __HAL_DBGMCU_FREEZE_TIM23() (DBGMCU->APB1HFZ1 |= (DBGMCU_APB1HFZ1_DBG_TIM23))
899#endif /*TIM23*/
900#if defined(TIM24)
901#define __HAL_DBGMCU_FREEZE_TIM24() (DBGMCU->APB1HFZ1 |= (DBGMCU_APB1HFZ1_DBG_TIM24))
902#endif /*TIM24*/
903
904#define __HAL_DBGMCU_FREEZE_TIM1() (DBGMCU->APB2FZ1 |= (DBGMCU_APB2FZ1_DBG_TIM1))
905#define __HAL_DBGMCU_FREEZE_TIM8() (DBGMCU->APB2FZ1 |= (DBGMCU_APB2FZ1_DBG_TIM8))
906#define __HAL_DBGMCU_FREEZE_TIM15() (DBGMCU->APB2FZ1 |= (DBGMCU_APB2FZ1_DBG_TIM15))
907#define __HAL_DBGMCU_FREEZE_TIM16() (DBGMCU->APB2FZ1 |= (DBGMCU_APB2FZ1_DBG_TIM16))
908#define __HAL_DBGMCU_FREEZE_TIM17() (DBGMCU->APB2FZ1 |= (DBGMCU_APB2FZ1_DBG_TIM17))
909#define __HAL_DBGMCU_FREEZE_HRTIM() (DBGMCU->APB2FZ1 |= (DBGMCU_APB2FZ1_DBG_HRTIM))
910
911#define __HAL_DBGMCU_FREEZE_I2C4() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_I2C4))
912#define __HAL_DBGMCU_FREEZE_LPTIM2() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_LPTIM2))
913#define __HAL_DBGMCU_FREEZE_LPTIM3() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_LPTIM3))
914#define __HAL_DBGMCU_FREEZE_LPTIM4() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_LPTIM4))
915#define __HAL_DBGMCU_FREEZE_LPTIM5() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_LPTIM5))
916#define __HAL_DBGMCU_FREEZE_RTC() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_RTC))
917#define __HAL_DBGMCU_FREEZE_IWDG1() (DBGMCU->APB4FZ1 |= (DBGMCU_APB4FZ1_DBG_IWDG1))
918
919
920#define __HAL_DBGMCU_UnFreeze_WWDG1() (DBGMCU->APB3FZ1 &= ~ (DBGMCU_APB3FZ1_DBG_WWDG1))
921
922#define __HAL_DBGMCU_UnFreeze_TIM2() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM2))
923#define __HAL_DBGMCU_UnFreeze_TIM3() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM3))
924#define __HAL_DBGMCU_UnFreeze_TIM4() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM4))
925#define __HAL_DBGMCU_UnFreeze_TIM5() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM5))
926#define __HAL_DBGMCU_UnFreeze_TIM6() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM6))
927#define __HAL_DBGMCU_UnFreeze_TIM7() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM7))
928#define __HAL_DBGMCU_UnFreeze_TIM12() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM12))
929#define __HAL_DBGMCU_UnFreeze_TIM13() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM13))
930#define __HAL_DBGMCU_UnFreeze_TIM14() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_TIM14))
931#define __HAL_DBGMCU_UnFreeze_LPTIM1() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_LPTIM1))
932#define __HAL_DBGMCU_UnFreeze_I2C1() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_I2C1))
933#define __HAL_DBGMCU_UnFreeze_I2C2() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_I2C2))
934#define __HAL_DBGMCU_UnFreeze_I2C3() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_I2C3))
935#if defined(I2C5)
936#define __HAL_DBGMCU_UnFreeze_I2C5() (DBGMCU->APB1LFZ1 &= ~ (DBGMCU_APB1LFZ1_DBG_I2C5))
937#endif /*I2C5*/
938#if defined(DBGMCU_APB1HFZ1_DBG_FDCAN)
939#define __HAL_DBGMCU_UnFreeze_FDCAN() (DBGMCU->APB1HFZ1 &= ~ (DBGMCU_APB1HFZ1_DBG_FDCAN))
940#endif /*DBGMCU_APB1HFZ1_DBG_FDCAN*/
941
942#if defined(TIM23)
943#define __HAL_DBGMCU_UnFreeze_TIM23() (DBGMCU->APB1HFZ1 &= ~ (DBGMCU_APB1HFZ1_DBG_TIM23))
944#endif /*TIM23*/
945#if defined(TIM24)
946#define __HAL_DBGMCU_UnFreeze_TIM24() (DBGMCU->APB1HFZ1 &= ~ (DBGMCU_APB1HFZ1_DBG_TIM24))
947#endif /*TIM24*/
948
949#define __HAL_DBGMCU_UnFreeze_TIM1() (DBGMCU->APB2FZ1 &= ~ (DBGMCU_APB2FZ1_DBG_TIM1))
950#define __HAL_DBGMCU_UnFreeze_TIM8() (DBGMCU->APB2FZ1 &= ~ (DBGMCU_APB2FZ1_DBG_TIM8))
951#define __HAL_DBGMCU_UnFreeze_TIM15() (DBGMCU->APB2FZ1 &= ~ (DBGMCU_APB2FZ1_DBG_TIM15))
952#define __HAL_DBGMCU_UnFreeze_TIM16() (DBGMCU->APB2FZ1 &= ~ (DBGMCU_APB2FZ1_DBG_TIM16))
953#define __HAL_DBGMCU_UnFreeze_TIM17() (DBGMCU->APB2FZ1 &= ~ (DBGMCU_APB2FZ1_DBG_TIM17))
954#define __HAL_DBGMCU_UnFreeze_HRTIM() (DBGMCU->APB2FZ1 &= ~ (DBGMCU_APB2FZ1_DBG_HRTIM))
955
956#define __HAL_DBGMCU_UnFreeze_I2C4() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_I2C4))
957#define __HAL_DBGMCU_UnFreeze_LPTIM2() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_LPTIM2))
958#define __HAL_DBGMCU_UnFreeze_LPTIM3() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_LPTIM3))
959#define __HAL_DBGMCU_UnFreeze_LPTIM4() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_LPTIM4))
960#define __HAL_DBGMCU_UnFreeze_LPTIM5() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_LPTIM5))
961#define __HAL_DBGMCU_UnFreeze_RTC() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_RTC))
962#define __HAL_DBGMCU_UnFreeze_IWDG1() (DBGMCU->APB4FZ1 &= ~ (DBGMCU_APB4FZ1_DBG_IWDG1))
963
964
965#if defined(DUAL_CORE)
966#define __HAL_DBGMCU_FREEZE2_IWDG2() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_IWDG2))
967#define __HAL_DBGMCU_FREEZE2_WWDG2() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_WWDG2))
968
969#define __HAL_DBGMCU_UnFreeze2_IWDG2() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_IWDG2))
970#define __HAL_DBGMCU_UnFreeze2_WWDG2() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_WWDG2))
971
972
973#define __HAL_DBGMCU_FREEZE2_WWDG1() (DBGMCU->APB3FZ2 |= (DBGMCU_APB3FZ2_DBG_WWDG1))
974
975#define __HAL_DBGMCU_FREEZE2_TIM2() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM2))
976#define __HAL_DBGMCU_FREEZE2_TIM3() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM3))
977#define __HAL_DBGMCU_FREEZE2_TIM4() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM4))
978#define __HAL_DBGMCU_FREEZE2_TIM5() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM5))
979#define __HAL_DBGMCU_FREEZE2_TIM6() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM6))
980#define __HAL_DBGMCU_FREEZE2_TIM7() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM7))
981#define __HAL_DBGMCU_FREEZE2_TIM12() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM12))
982#define __HAL_DBGMCU_FREEZE2_TIM13() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM13))
983#define __HAL_DBGMCU_FREEZE2_TIM14() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_TIM14))
984#define __HAL_DBGMCU_FREEZE2_LPTIM1() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_LPTIM1))
985#define __HAL_DBGMCU_FREEZE2_I2C1() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_I2C1))
986#define __HAL_DBGMCU_FREEZE2_I2C2() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_I2C2))
987#define __HAL_DBGMCU_FREEZE2_I2C3() (DBGMCU->APB1LFZ2 |= (DBGMCU_APB1LFZ2_DBG_I2C3))
988#define __HAL_DBGMCU_FREEZE2_FDCAN() (DBGMCU->APB1HFZ2 |= (DBGMCU_APB1HFZ2_DBG_FDCAN))
989
990
991#define __HAL_DBGMCU_FREEZE2_TIM1() (DBGMCU->APB2FZ2 |= (DBGMCU_APB2FZ2_DBG_TIM1))
992#define __HAL_DBGMCU_FREEZE2_TIM8() (DBGMCU->APB2FZ2 |= (DBGMCU_APB2FZ2_DBG_TIM8))
993#define __HAL_DBGMCU_FREEZE2_TIM15() (DBGMCU->APB2FZ2 |= (DBGMCU_APB2FZ2_DBG_TIM15))
994#define __HAL_DBGMCU_FREEZE2_TIM16() (DBGMCU->APB2FZ2 |= (DBGMCU_APB2FZ2_DBG_TIM16))
995#define __HAL_DBGMCU_FREEZE2_TIM17() (DBGMCU->APB2FZ2 |= (DBGMCU_APB2FZ2_DBG_TIM17))
996#define __HAL_DBGMCU_FREEZE2_HRTIM() (DBGMCU->APB2FZ2 |= (DBGMCU_APB2FZ2_DBG_HRTIM))
997
998#define __HAL_DBGMCU_FREEZE2_I2C4() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_I2C4))
999#define __HAL_DBGMCU_FREEZE2_LPTIM2() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_LPTIM2))
1000#define __HAL_DBGMCU_FREEZE2_LPTIM3() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_LPTIM3))
1001#define __HAL_DBGMCU_FREEZE2_LPTIM4() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_LPTIM4))
1002#define __HAL_DBGMCU_FREEZE2_LPTIM5() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_LPTIM5))
1003#define __HAL_DBGMCU_FREEZE2_RTC() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_RTC))
1004#define __HAL_DBGMCU_FREEZE2_IWDG1() (DBGMCU->APB4FZ2 |= (DBGMCU_APB4FZ2_DBG_IWDG1))
1005
1006#define __HAL_DBGMCU_UnFreeze2_WWDG1() (DBGMCU->APB3FZ2 &= ~ (DBGMCU_APB3FZ2_DBG_WWDG1))
1007
1008#define __HAL_DBGMCU_UnFreeze2_TIM2() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM2))
1009#define __HAL_DBGMCU_UnFreeze2_TIM3() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM3))
1010#define __HAL_DBGMCU_UnFreeze2_TIM4() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM4))
1011#define __HAL_DBGMCU_UnFreeze2_TIM5() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM5))
1012#define __HAL_DBGMCU_UnFreeze2_TIM6() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM6))
1013#define __HAL_DBGMCU_UnFreeze2_TIM7() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM7))
1014#define __HAL_DBGMCU_UnFreeze2_TIM12() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM12))
1015#define __HAL_DBGMCU_UnFreeze2_TIM13() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM13))
1016#define __HAL_DBGMCU_UnFreeze2_TIM14() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_TIM14))
1017#define __HAL_DBGMCU_UnFreeze2_LPTIM1() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_LPTIM1))
1018#define __HAL_DBGMCU_UnFreeze2_I2C1() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_I2C1))
1019#define __HAL_DBGMCU_UnFreeze2_I2C2() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_I2C2))
1020#define __HAL_DBGMCU_UnFreeze2_I2C3() (DBGMCU->APB1LFZ2 &= ~ (DBGMCU_APB1LFZ2_DBG_I2C3))
1021#define __HAL_DBGMCU_UnFreeze2_FDCAN() (DBGMCU->APB1HFZ2 &= ~ (DBGMCU_APB1HFZ2_DBG_FDCAN))
1022
1023
1024#define __HAL_DBGMCU_UnFreeze2_TIM1() (DBGMCU->APB2FZ2 &= ~ (DBGMCU_APB2FZ2_DBG_TIM1))
1025#define __HAL_DBGMCU_UnFreeze2_TIM8() (DBGMCU->APB2FZ2 &= ~ (DBGMCU_APB2FZ2_DBG_TIM8))
1026#define __HAL_DBGMCU_UnFreeze2_TIM15() (DBGMCU->APB2FZ2 &= ~ (DBGMCU_APB2FZ2_DBG_TIM15))
1027#define __HAL_DBGMCU_UnFreeze2_TIM16() (DBGMCU->APB2FZ2 &= ~ (DBGMCU_APB2FZ2_DBG_TIM16))
1028#define __HAL_DBGMCU_UnFreeze2_TIM17() (DBGMCU->APB2FZ2 &= ~ (DBGMCU_APB2FZ2_DBG_TIM17))
1029#define __HAL_DBGMCU_UnFreeze2_HRTIM() (DBGMCU->APB2FZ2 &= ~ (DBGMCU_APB2FZ2_DBG_HRTIM))
1030
1031#define __HAL_DBGMCU_UnFreeze2_I2C4() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_I2C4))
1032#define __HAL_DBGMCU_UnFreeze2_LPTIM2() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_LPTIM2))
1033#define __HAL_DBGMCU_UnFreeze2_LPTIM3() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_LPTIM3))
1034#define __HAL_DBGMCU_UnFreeze2_LPTIM4() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_LPTIM4))
1035#define __HAL_DBGMCU_UnFreeze2_LPTIM5() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_LPTIM5))
1036#define __HAL_DBGMCU_UnFreeze2_RTC() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_RTC))
1037#define __HAL_DBGMCU_UnFreeze2_IWDG1() (DBGMCU->APB4FZ2 &= ~ (DBGMCU_APB4FZ2_DBG_IWDG1))
1038
1039#endif /*DUAL_CORE*/
1051#define IS_TICKFREQ(FREQ) (((FREQ) == HAL_TICK_FREQ_10HZ) || \
1052 ((FREQ) == HAL_TICK_FREQ_100HZ) || \
1053 ((FREQ) == HAL_TICK_FREQ_1KHZ))
1058/* Exported variables --------------------------------------------------------*/
1059
1063extern __IO uint32_t uwTick;
1064extern uint32_t uwTickPrio;
1065extern HAL_TickFreqTypeDef uwTickFreq;
1070/* Exported functions --------------------------------------------------------*/
1075/* Initialization and de-initialization functions ******************************/
1082void HAL_MspInit(void);
1083void HAL_MspDeInit(void);
1084HAL_StatusTypeDef HAL_InitTick (uint32_t TickPriority);
1085
1090/* Peripheral Control functions ************************************************/
1095void HAL_IncTick(void);
1096void HAL_Delay(uint32_t Delay);
1097uint32_t HAL_GetTick(void);
1098uint32_t HAL_GetTickPrio(void);
1099HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq);
1100HAL_TickFreqTypeDef HAL_GetTickFreq(void);
1101void HAL_SuspendTick(void);
1102void HAL_ResumeTick(void);
1103uint32_t HAL_GetHalVersion(void);
1104uint32_t HAL_GetREVID(void);
1105uint32_t HAL_GetDEVID(void);
1106uint32_t HAL_GetUIDw0(void);
1107uint32_t HAL_GetUIDw1(void);
1108uint32_t HAL_GetUIDw2(void);
1109#if defined(SYSCFG_PMCR_EPIS_SEL)
1110void HAL_SYSCFG_ETHInterfaceSelect(uint32_t SYSCFG_ETHInterface);
1111#endif /* SYSCFG_PMCR_EPIS_SEL */
1112void HAL_SYSCFG_AnalogSwitchConfig(uint32_t SYSCFG_AnalogSwitch , uint32_t SYSCFG_SwitchState );
1113#if defined(SYSCFG_PMCR_BOOSTEN)
1114void HAL_SYSCFG_EnableBOOST(void);
1115void HAL_SYSCFG_DisableBOOST(void);
1116#endif /* SYSCFG_PMCR_BOOSTEN */
1117
1118#if defined (SYSCFG_UR2_BOOT_ADD0) || defined (SYSCFG_UR2_BCM7_ADD0)
1119void HAL_SYSCFG_CM7BootAddConfig(uint32_t BootRegister, uint32_t BootAddress);
1120#endif /* SYSCFG_UR2_BOOT_ADD0 || SYSCFG_UR2_BCM7_ADD0*/
1121
1122#if defined(DUAL_CORE)
1123void HAL_SYSCFG_CM4BootAddConfig(uint32_t BootRegister, uint32_t BootAddress);
1124void HAL_SYSCFG_EnableCM7BOOT(void);
1125void HAL_SYSCFG_DisableCM7BOOT(void);
1126void HAL_SYSCFG_EnableCM4BOOT(void);
1127void HAL_SYSCFG_DisableCM4BOOT(void);
1128#endif /*DUAL_CORE*/
1133void HAL_SYSCFG_CompensationCodeSelect(uint32_t SYSCFG_CompCode);
1134void HAL_SYSCFG_CompensationCodeConfig(uint32_t SYSCFG_PMOSCode, uint32_t SYSCFG_NMOSCode);
1135#if defined(SYSCFG_CCCR_NCC_MMC)
1136void HAL_SYSCFG_VDDMMC_CompensationCodeConfig(uint32_t SYSCFG_PMOSCode, uint32_t SYSCFG_NMOSCode);
1137#endif /* SYSCFG_CCCR_NCC_MMC */
1144#if defined(DUAL_CORE)
1145void HAL_EnableDomain2DBGSleepMode(void);
1146void HAL_DisableDomain2DBGSleepMode(void);
1147void HAL_EnableDomain2DBGStopMode(void);
1148void HAL_DisableDomain2DBGStopMode(void);
1149void HAL_EnableDomain2DBGStandbyMode(void);
1150void HAL_DisableDomain2DBGStandbyMode(void);
1151#endif /*DUAL_CORE*/
1152#if defined(DBGMCU_CR_DBG_STOPD3)
1153void HAL_EnableDomain3DBGStopMode(void);
1154void HAL_DisableDomain3DBGStopMode(void);
1155#endif /*DBGMCU_CR_DBG_STOPD3*/
1156#if defined(DBGMCU_CR_DBG_STANDBYD3)
1157void HAL_EnableDomain3DBGStandbyMode(void);
1158void HAL_DisableDomain3DBGStandbyMode(void);
1159#endif /*DBGMCU_CR_DBG_STANDBYD3*/
1160void HAL_EXTI_EdgeConfig(uint32_t EXTI_Line , uint32_t EXTI_Edge );
1161void HAL_EXTI_GenerateSWInterrupt(uint32_t EXTI_Line);
1162#if defined(DUAL_CORE)
1163void HAL_EXTI_D2_ClearFlag(uint32_t EXTI_Line);
1164#endif /*DUAL_CORE*/
1165void HAL_EXTI_D1_ClearFlag(uint32_t EXTI_Line);
1166void HAL_EXTI_D1_EventInputConfig(uint32_t EXTI_Line , uint32_t EXTI_Mode, uint32_t EXTI_LineCmd);
1167#if defined(DUAL_CORE)
1168void HAL_EXTI_D2_EventInputConfig(uint32_t EXTI_Line , uint32_t EXTI_Mode, uint32_t EXTI_LineCmd);
1169#endif /*DUAL_CORE*/
1170void HAL_EXTI_D3_EventInputConfig(uint32_t EXTI_Line, uint32_t EXTI_LineCmd , uint32_t EXTI_ClearSrc);
1171void HAL_SetFMCMemorySwappingConfig(uint32_t BankMapConfig);
1172uint32_t HAL_GetFMCMemorySwappingConfig(void);
1173void HAL_SYSCFG_VREFBUF_VoltageScalingConfig(uint32_t VoltageScaling);
1174void HAL_SYSCFG_VREFBUF_HighImpedanceConfig(uint32_t Mode);
1175void HAL_SYSCFG_VREFBUF_TrimmingConfig(uint32_t TrimmingValue);
1177void HAL_SYSCFG_DisableVREFBUF(void);
1178#if defined(SYSCFG_ADC2ALT_ADC2_ROUT0)
1179void HAL_SYSCFG_ADC2ALT_Rout0Config(uint32_t Adc2AltRout0);
1180#endif /*SYSCFG_ADC2ALT_ADC2_ROUT0*/
1181#if defined(SYSCFG_ADC2ALT_ADC2_ROUT1)
1182void HAL_SYSCFG_ADC2ALT_Rout1Config(uint32_t Adc2AltRout1);
1183#endif /*SYSCFG_ADC2ALT_ADC2_ROUT1*/
1184
1201#ifdef __cplusplus
1202}
1203#endif
1204
1205#endif /* STM32H7xx_HAL_H */
1206
1207
#define __IO
Definition: core_cm4.h:239
void HAL_EXTI_D3_EventInputConfig(uint32_t EXTI_Line, uint32_t EXTI_LineCmd, uint32_t EXTI_ClearSrc)
Configure the EXTI input event line for Domain D3.
Definition: stm32h7xx_hal.c:1276
void HAL_SYSCFG_CompensationCodeSelect(uint32_t SYSCFG_CompCode)
Code selection for the I/O Compensation cell.
Definition: stm32h7xx_hal.c:845
void HAL_EnableCompensationCell(void)
Enables the I/O Compensation Cell.
Definition: stm32h7xx_hal.c:788
void HAL_ResumeTick(void)
Resume Tick increment.
Definition: stm32h7xx_hal.c:458
void HAL_SYSCFG_DisableVREFBUF(void)
Disable the Internal Voltage Reference buffer (VREFBUF).
Definition: stm32h7xx_hal.c:599
void HAL_DBGMCU_EnableDBGStandbyMode(void)
Enable the Debug Module during Domain1/CDomain STANDBY mode.
Definition: stm32h7xx_hal.c:961
void HAL_SetFMCMemorySwappingConfig(uint32_t BankMapConfig)
Set the FMC Memory Mapping Swapping config.
Definition: stm32h7xx_hal.c:1077
void HAL_DBGMCU_DisableDBGStopMode(void)
Disable the Debug Module during Domain1/CDomain STOP mode.
Definition: stm32h7xx_hal.c:952
HAL_StatusTypeDef HAL_SYSCFG_EnableVREFBUF(void)
Enable the Internal Voltage Reference buffer (VREFBUF).
Definition: stm32h7xx_hal.c:573
HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq)
Set new tick Freq.
Definition: stm32h7xx_hal.c:367
uint32_t HAL_GetUIDw1(void)
Return the second word of the unique device identifier (UID based on 96 bits)
Definition: stm32h7xx_hal.c:505
uint32_t HAL_GetUIDw2(void)
Return the third word of the unique device identifier (UID based on 96 bits)
Definition: stm32h7xx_hal.c:514
void HAL_DisableCompensationCell(void)
Power-down the I/O Compensation Cell.
Definition: stm32h7xx_hal.c:799
void HAL_SYSCFG_VREFBUF_VoltageScalingConfig(uint32_t VoltageScaling)
Configure the internal voltage reference buffer voltage scale.
Definition: stm32h7xx_hal.c:533
void HAL_SYSCFG_VREFBUF_HighImpedanceConfig(uint32_t Mode)
Configure the internal voltage reference buffer high impedance mode.
Definition: stm32h7xx_hal.c:549
void HAL_SYSCFG_DisableIOSpeedOptimize(void)
To Disable optimize the I/O speed when the product voltage is low.
Definition: stm32h7xx_hal.c:828
void HAL_DBGMCU_DisableDBGStandbyMode(void)
Disable the Debug Module during Domain1/CDomain STANDBY mode.
Definition: stm32h7xx_hal.c:970
HAL_TickFreqTypeDef HAL_GetTickFreq(void)
Return tick frequency.
Definition: stm32h7xx_hal.c:400
void HAL_IncTick(void)
This function is called to increment a global variable "uwTick" used as application time base.
Definition: stm32h7xx_hal.c:338
void HAL_EXTI_D1_ClearFlag(uint32_t EXTI_Line)
Clears the EXTI's line pending flags for Domain D1.
Definition: stm32h7xx_hal.c:1147
void HAL_SuspendTick(void)
Suspend Tick increment.
Definition: stm32h7xx_hal.c:442
void HAL_EXTI_GenerateSWInterrupt(uint32_t EXTI_Line)
Generates a Software interrupt on selected EXTI line.
Definition: stm32h7xx_hal.c:1132
void HAL_EXTI_EdgeConfig(uint32_t EXTI_Line, uint32_t EXTI_Edge)
Configure the EXTI input event line edge.
Definition: stm32h7xx_hal.c:1106
uint32_t HAL_GetFMCMemorySwappingConfig(void)
Get FMC Bank mapping mode.
Definition: stm32h7xx_hal.c:1089
void HAL_DBGMCU_DisableDBGSleepMode(void)
Disable the Debug Module during Domain1/CDomain SLEEP mode.
Definition: stm32h7xx_hal.c:933
uint32_t HAL_GetTickPrio(void)
This function returns a tick priority.
Definition: stm32h7xx_hal.c:358
void HAL_SYSCFG_CompensationCodeConfig(uint32_t SYSCFG_PMOSCode, uint32_t SYSCFG_NMOSCode)
Code selection for the I/O Compensation cell.
Definition: stm32h7xx_hal.c:862
void HAL_DBGMCU_EnableDBGStopMode(void)
Enable the Debug Module during Domain1/CDomain STOP mode.
Definition: stm32h7xx_hal.c:943
void HAL_SYSCFG_VREFBUF_TrimmingConfig(uint32_t TrimmingValue)
Tune the Internal Voltage Reference buffer (VREFBUF).
Definition: stm32h7xx_hal.c:561
uint32_t HAL_GetREVID(void)
Returns the device revision identifier.
Definition: stm32h7xx_hal.c:478
void HAL_Delay(uint32_t Delay)
This function provides minimum delay (in milliseconds) based on variable incremented.
Definition: stm32h7xx_hal.c:416
void HAL_DBGMCU_EnableDBGSleepMode(void)
Enable the Debug Module during Domain1/CDomain SLEEP mode.
Definition: stm32h7xx_hal.c:924
uint32_t HAL_GetTick(void)
Provides a tick value in millisecond.
Definition: stm32h7xx_hal.c:349
void HAL_SYSCFG_AnalogSwitchConfig(uint32_t SYSCFG_AnalogSwitch, uint32_t SYSCFG_SwitchState)
Analog Switch control for dual analog pads.
Definition: stm32h7xx_hal.c:643
void HAL_SYSCFG_EnableIOSpeedOptimize(void)
To Enable optimize the I/O speed when the product voltage is low.
Definition: stm32h7xx_hal.c:812
uint32_t HAL_GetUIDw0(void)
Return the first word of the unique device identifier (UID based on 96 bits)
Definition: stm32h7xx_hal.c:496
uint32_t HAL_GetHalVersion(void)
Returns the HAL revision.
Definition: stm32h7xx_hal.c:469
void HAL_EXTI_D1_EventInputConfig(uint32_t EXTI_Line, uint32_t EXTI_Mode, uint32_t EXTI_LineCmd)
Configure the EXTI input event line for Domain D1.
Definition: stm32h7xx_hal.c:1182
uint32_t HAL_GetDEVID(void)
Returns the device identifier.
Definition: stm32h7xx_hal.c:487
__weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority)
This function configures the source of the time base. The time source is configured to have 1ms time ...
Definition: stm32h7xx_hal.c:271
HAL_StatusTypeDef HAL_DeInit(void)
This function de-Initializes common part of the HAL and stops the systick. This function is optional.
Definition: stm32h7xx_hal.c:194
__weak void HAL_MspDeInit(void)
DeInitializes the MSP.
Definition: stm32h7xx_hal.c:248
__weak void HAL_MspInit(void)
Initializes the MSP.
Definition: stm32h7xx_hal.c:237
HAL_StatusTypeDef HAL_Init(void)
This function is used to initialize the HAL Library; it must be the first instruction to be executed ...
Definition: stm32h7xx_hal.c:138
HAL_StatusTypeDef
HAL Status structures definition.
Definition: stm32h7xx_hal_def.h:47