21 #ifndef __STM32F1xx_LL_RCC_H
22 #define __STM32F1xx_LL_RCC_H
45 #if defined(USE_FULL_LL_DRIVER)
54 #if defined(USE_FULL_LL_DRIVER)
68 uint32_t SYSCLK_Frequency;
69 uint32_t HCLK_Frequency;
70 uint32_t PCLK1_Frequency;
71 uint32_t PCLK2_Frequency;
72 } LL_RCC_ClocksTypeDef;
94 #if !defined (HSE_VALUE)
95 #define HSE_VALUE 8000000U
98 #if !defined (HSI_VALUE)
99 #define HSI_VALUE 8000000U
102 #if !defined (LSE_VALUE)
103 #define LSE_VALUE 32768U
106 #if !defined (LSI_VALUE)
107 #define LSI_VALUE 40000U
117 #define LL_RCC_CIR_LSIRDYC RCC_CIR_LSIRDYC
118 #define LL_RCC_CIR_LSERDYC RCC_CIR_LSERDYC
119 #define LL_RCC_CIR_HSIRDYC RCC_CIR_HSIRDYC
120 #define LL_RCC_CIR_HSERDYC RCC_CIR_HSERDYC
121 #define LL_RCC_CIR_PLLRDYC RCC_CIR_PLLRDYC
122 #define LL_RCC_CIR_PLL3RDYC RCC_CIR_PLL3RDYC
123 #define LL_RCC_CIR_PLL2RDYC RCC_CIR_PLL2RDYC
124 #define LL_RCC_CIR_CSSC RCC_CIR_CSSC
133 #define LL_RCC_CIR_LSIRDYF RCC_CIR_LSIRDYF
134 #define LL_RCC_CIR_LSERDYF RCC_CIR_LSERDYF
135 #define LL_RCC_CIR_HSIRDYF RCC_CIR_HSIRDYF
136 #define LL_RCC_CIR_HSERDYF RCC_CIR_HSERDYF
137 #define LL_RCC_CIR_PLLRDYF RCC_CIR_PLLRDYF
138 #define LL_RCC_CIR_PLL3RDYF RCC_CIR_PLL3RDYF
139 #define LL_RCC_CIR_PLL2RDYF RCC_CIR_PLL2RDYF
140 #define LL_RCC_CIR_CSSF RCC_CIR_CSSF
141 #define LL_RCC_CSR_PINRSTF RCC_CSR_PINRSTF
142 #define LL_RCC_CSR_PORRSTF RCC_CSR_PORRSTF
143 #define LL_RCC_CSR_SFTRSTF RCC_CSR_SFTRSTF
144 #define LL_RCC_CSR_IWDGRSTF RCC_CSR_IWDGRSTF
145 #define LL_RCC_CSR_WWDGRSTF RCC_CSR_WWDGRSTF
146 #define LL_RCC_CSR_LPWRRSTF RCC_CSR_LPWRRSTF
155 #define LL_RCC_CIR_LSIRDYIE RCC_CIR_LSIRDYIE
156 #define LL_RCC_CIR_LSERDYIE RCC_CIR_LSERDYIE
157 #define LL_RCC_CIR_HSIRDYIE RCC_CIR_HSIRDYIE
158 #define LL_RCC_CIR_HSERDYIE RCC_CIR_HSERDYIE
159 #define LL_RCC_CIR_PLLRDYIE RCC_CIR_PLLRDYIE
160 #define LL_RCC_CIR_PLL3RDYIE RCC_CIR_PLL3RDYIE
161 #define LL_RCC_CIR_PLL2RDYIE RCC_CIR_PLL2RDYIE
166 #if defined(RCC_CFGR2_PREDIV2)
170 #define LL_RCC_HSE_PREDIV2_DIV_1 RCC_CFGR2_PREDIV2_DIV1
171 #define LL_RCC_HSE_PREDIV2_DIV_2 RCC_CFGR2_PREDIV2_DIV2
172 #define LL_RCC_HSE_PREDIV2_DIV_3 RCC_CFGR2_PREDIV2_DIV3
173 #define LL_RCC_HSE_PREDIV2_DIV_4 RCC_CFGR2_PREDIV2_DIV4
174 #define LL_RCC_HSE_PREDIV2_DIV_5 RCC_CFGR2_PREDIV2_DIV5
175 #define LL_RCC_HSE_PREDIV2_DIV_6 RCC_CFGR2_PREDIV2_DIV6
176 #define LL_RCC_HSE_PREDIV2_DIV_7 RCC_CFGR2_PREDIV2_DIV7
177 #define LL_RCC_HSE_PREDIV2_DIV_8 RCC_CFGR2_PREDIV2_DIV8
178 #define LL_RCC_HSE_PREDIV2_DIV_9 RCC_CFGR2_PREDIV2_DIV9
179 #define LL_RCC_HSE_PREDIV2_DIV_10 RCC_CFGR2_PREDIV2_DIV10
180 #define LL_RCC_HSE_PREDIV2_DIV_11 RCC_CFGR2_PREDIV2_DIV11
181 #define LL_RCC_HSE_PREDIV2_DIV_12 RCC_CFGR2_PREDIV2_DIV12
182 #define LL_RCC_HSE_PREDIV2_DIV_13 RCC_CFGR2_PREDIV2_DIV13
183 #define LL_RCC_HSE_PREDIV2_DIV_14 RCC_CFGR2_PREDIV2_DIV14
184 #define LL_RCC_HSE_PREDIV2_DIV_15 RCC_CFGR2_PREDIV2_DIV15
185 #define LL_RCC_HSE_PREDIV2_DIV_16 RCC_CFGR2_PREDIV2_DIV16
195 #define LL_RCC_SYS_CLKSOURCE_HSI RCC_CFGR_SW_HSI
196 #define LL_RCC_SYS_CLKSOURCE_HSE RCC_CFGR_SW_HSE
197 #define LL_RCC_SYS_CLKSOURCE_PLL RCC_CFGR_SW_PLL
205 #define LL_RCC_SYS_CLKSOURCE_STATUS_HSI RCC_CFGR_SWS_HSI
206 #define LL_RCC_SYS_CLKSOURCE_STATUS_HSE RCC_CFGR_SWS_HSE
207 #define LL_RCC_SYS_CLKSOURCE_STATUS_PLL RCC_CFGR_SWS_PLL
215 #define LL_RCC_SYSCLK_DIV_1 RCC_CFGR_HPRE_DIV1
216 #define LL_RCC_SYSCLK_DIV_2 RCC_CFGR_HPRE_DIV2
217 #define LL_RCC_SYSCLK_DIV_4 RCC_CFGR_HPRE_DIV4
218 #define LL_RCC_SYSCLK_DIV_8 RCC_CFGR_HPRE_DIV8
219 #define LL_RCC_SYSCLK_DIV_16 RCC_CFGR_HPRE_DIV16
220 #define LL_RCC_SYSCLK_DIV_64 RCC_CFGR_HPRE_DIV64
221 #define LL_RCC_SYSCLK_DIV_128 RCC_CFGR_HPRE_DIV128
222 #define LL_RCC_SYSCLK_DIV_256 RCC_CFGR_HPRE_DIV256
223 #define LL_RCC_SYSCLK_DIV_512 RCC_CFGR_HPRE_DIV512
231 #define LL_RCC_APB1_DIV_1 RCC_CFGR_PPRE1_DIV1
232 #define LL_RCC_APB1_DIV_2 RCC_CFGR_PPRE1_DIV2
233 #define LL_RCC_APB1_DIV_4 RCC_CFGR_PPRE1_DIV4
234 #define LL_RCC_APB1_DIV_8 RCC_CFGR_PPRE1_DIV8
235 #define LL_RCC_APB1_DIV_16 RCC_CFGR_PPRE1_DIV16
243 #define LL_RCC_APB2_DIV_1 RCC_CFGR_PPRE2_DIV1
244 #define LL_RCC_APB2_DIV_2 RCC_CFGR_PPRE2_DIV2
245 #define LL_RCC_APB2_DIV_4 RCC_CFGR_PPRE2_DIV4
246 #define LL_RCC_APB2_DIV_8 RCC_CFGR_PPRE2_DIV8
247 #define LL_RCC_APB2_DIV_16 RCC_CFGR_PPRE2_DIV16
255 #define LL_RCC_MCO1SOURCE_NOCLOCK RCC_CFGR_MCO_NOCLOCK
256 #define LL_RCC_MCO1SOURCE_SYSCLK RCC_CFGR_MCO_SYSCLK
257 #define LL_RCC_MCO1SOURCE_HSI RCC_CFGR_MCO_HSI
258 #define LL_RCC_MCO1SOURCE_HSE RCC_CFGR_MCO_HSE
259 #define LL_RCC_MCO1SOURCE_PLLCLK_DIV_2 RCC_CFGR_MCO_PLLCLK_DIV2
260 #if defined(RCC_CFGR_MCO_PLL2CLK)
261 #define LL_RCC_MCO1SOURCE_PLL2CLK RCC_CFGR_MCO_PLL2CLK
263 #if defined(RCC_CFGR_MCO_PLL3CLK_DIV2)
264 #define LL_RCC_MCO1SOURCE_PLLI2SCLK_DIV2 RCC_CFGR_MCO_PLL3CLK_DIV2
266 #if defined(RCC_CFGR_MCO_EXT_HSE)
267 #define LL_RCC_MCO1SOURCE_EXT_HSE RCC_CFGR_MCO_EXT_HSE
269 #if defined(RCC_CFGR_MCO_PLL3CLK)
270 #define LL_RCC_MCO1SOURCE_PLLI2SCLK RCC_CFGR_MCO_PLL3CLK
276 #if defined(USE_FULL_LL_DRIVER)
280 #define LL_RCC_PERIPH_FREQUENCY_NO 0x00000000U
281 #define LL_RCC_PERIPH_FREQUENCY_NA 0xFFFFFFFFU
287 #if defined(RCC_CFGR2_I2S2SRC)
291 #define LL_RCC_I2S2_CLKSOURCE_SYSCLK RCC_CFGR2_I2S2SRC
292 #define LL_RCC_I2S2_CLKSOURCE_PLLI2S_VCO (uint32_t)(RCC_CFGR2_I2S2SRC | (RCC_CFGR2_I2S2SRC >> 16U))
293 #define LL_RCC_I2S3_CLKSOURCE_SYSCLK RCC_CFGR2_I2S3SRC
294 #define LL_RCC_I2S3_CLKSOURCE_PLLI2S_VCO (uint32_t)(RCC_CFGR2_I2S3SRC | (RCC_CFGR2_I2S3SRC >> 16U))
300 #if defined(USB_OTG_FS) || defined(USB)
304 #if defined(RCC_CFGR_USBPRE)
305 #define LL_RCC_USB_CLKSOURCE_PLL RCC_CFGR_USBPRE
306 #define LL_RCC_USB_CLKSOURCE_PLL_DIV_1_5 0x00000000U
308 #if defined(RCC_CFGR_OTGFSPRE)
309 #define LL_RCC_USB_CLKSOURCE_PLL_DIV_2 RCC_CFGR_OTGFSPRE
310 #define LL_RCC_USB_CLKSOURCE_PLL_DIV_3 0x00000000U
320 #define LL_RCC_ADC_CLKSRC_PCLK2_DIV_2 RCC_CFGR_ADCPRE_DIV2
321 #define LL_RCC_ADC_CLKSRC_PCLK2_DIV_4 RCC_CFGR_ADCPRE_DIV4
322 #define LL_RCC_ADC_CLKSRC_PCLK2_DIV_6 RCC_CFGR_ADCPRE_DIV6
323 #define LL_RCC_ADC_CLKSRC_PCLK2_DIV_8 RCC_CFGR_ADCPRE_DIV8
328 #if defined(RCC_CFGR2_I2S2SRC)
332 #define LL_RCC_I2S2_CLKSOURCE RCC_CFGR2_I2S2SRC
333 #define LL_RCC_I2S3_CLKSOURCE RCC_CFGR2_I2S3SRC
340 #if defined(USB_OTG_FS) || defined(USB)
344 #define LL_RCC_USB_CLKSOURCE 0x00400000U
354 #define LL_RCC_ADC_CLKSOURCE RCC_CFGR_ADCPRE
362 #define LL_RCC_RTC_CLKSOURCE_NONE 0x00000000U
363 #define LL_RCC_RTC_CLKSOURCE_LSE RCC_BDCR_RTCSEL_0
364 #define LL_RCC_RTC_CLKSOURCE_LSI RCC_BDCR_RTCSEL_1
365 #define LL_RCC_RTC_CLKSOURCE_HSE_DIV128 RCC_BDCR_RTCSEL
373 #if defined(RCC_CFGR_PLLMULL2)
374 #define LL_RCC_PLL_MUL_2 RCC_CFGR_PLLMULL2
376 #if defined(RCC_CFGR_PLLMULL3)
377 #define LL_RCC_PLL_MUL_3 RCC_CFGR_PLLMULL3
379 #define LL_RCC_PLL_MUL_4 RCC_CFGR_PLLMULL4
380 #define LL_RCC_PLL_MUL_5 RCC_CFGR_PLLMULL5
381 #define LL_RCC_PLL_MUL_6 RCC_CFGR_PLLMULL6
382 #define LL_RCC_PLL_MUL_7 RCC_CFGR_PLLMULL7
383 #define LL_RCC_PLL_MUL_8 RCC_CFGR_PLLMULL8
384 #define LL_RCC_PLL_MUL_9 RCC_CFGR_PLLMULL9
385 #if defined(RCC_CFGR_PLLMULL6_5)
386 #define LL_RCC_PLL_MUL_6_5 RCC_CFGR_PLLMULL6_5
388 #define LL_RCC_PLL_MUL_10 RCC_CFGR_PLLMULL10
389 #define LL_RCC_PLL_MUL_11 RCC_CFGR_PLLMULL11
390 #define LL_RCC_PLL_MUL_12 RCC_CFGR_PLLMULL12
391 #define LL_RCC_PLL_MUL_13 RCC_CFGR_PLLMULL13
392 #define LL_RCC_PLL_MUL_14 RCC_CFGR_PLLMULL14
393 #define LL_RCC_PLL_MUL_15 RCC_CFGR_PLLMULL15
394 #define LL_RCC_PLL_MUL_16 RCC_CFGR_PLLMULL16
403 #define LL_RCC_PLLSOURCE_HSI_DIV_2 0x00000000U
404 #define LL_RCC_PLLSOURCE_HSE RCC_CFGR_PLLSRC
405 #if defined(RCC_CFGR2_PREDIV1SRC)
406 #define LL_RCC_PLLSOURCE_PLL2 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1SRC << 4U)
409 #if defined(RCC_CFGR2_PREDIV1)
410 #define LL_RCC_PLLSOURCE_HSE_DIV_1 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV1)
411 #define LL_RCC_PLLSOURCE_HSE_DIV_2 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV2)
412 #define LL_RCC_PLLSOURCE_HSE_DIV_3 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV3)
413 #define LL_RCC_PLLSOURCE_HSE_DIV_4 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV4)
414 #define LL_RCC_PLLSOURCE_HSE_DIV_5 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV5)
415 #define LL_RCC_PLLSOURCE_HSE_DIV_6 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV6)
416 #define LL_RCC_PLLSOURCE_HSE_DIV_7 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV7)
417 #define LL_RCC_PLLSOURCE_HSE_DIV_8 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV8)
418 #define LL_RCC_PLLSOURCE_HSE_DIV_9 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV9)
419 #define LL_RCC_PLLSOURCE_HSE_DIV_10 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV10)
420 #define LL_RCC_PLLSOURCE_HSE_DIV_11 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV11)
421 #define LL_RCC_PLLSOURCE_HSE_DIV_12 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV12)
422 #define LL_RCC_PLLSOURCE_HSE_DIV_13 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV13)
423 #define LL_RCC_PLLSOURCE_HSE_DIV_14 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV14)
424 #define LL_RCC_PLLSOURCE_HSE_DIV_15 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV15)
425 #define LL_RCC_PLLSOURCE_HSE_DIV_16 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV16)
426 #if defined(RCC_CFGR2_PREDIV1SRC)
427 #define LL_RCC_PLLSOURCE_PLL2_DIV_1 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV1 | RCC_CFGR2_PREDIV1SRC << 4U)
428 #define LL_RCC_PLLSOURCE_PLL2_DIV_2 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV2 | RCC_CFGR2_PREDIV1SRC << 4U)
429 #define LL_RCC_PLLSOURCE_PLL2_DIV_3 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV3 | RCC_CFGR2_PREDIV1SRC << 4U)
430 #define LL_RCC_PLLSOURCE_PLL2_DIV_4 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV4 | RCC_CFGR2_PREDIV1SRC << 4U)
431 #define LL_RCC_PLLSOURCE_PLL2_DIV_5 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV5 | RCC_CFGR2_PREDIV1SRC << 4U)
432 #define LL_RCC_PLLSOURCE_PLL2_DIV_6 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV6 | RCC_CFGR2_PREDIV1SRC << 4U)
433 #define LL_RCC_PLLSOURCE_PLL2_DIV_7 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV7 | RCC_CFGR2_PREDIV1SRC << 4U)
434 #define LL_RCC_PLLSOURCE_PLL2_DIV_8 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV8 | RCC_CFGR2_PREDIV1SRC << 4U)
435 #define LL_RCC_PLLSOURCE_PLL2_DIV_9 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV9 | RCC_CFGR2_PREDIV1SRC << 4U)
436 #define LL_RCC_PLLSOURCE_PLL2_DIV_10 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV10 | RCC_CFGR2_PREDIV1SRC << 4U)
437 #define LL_RCC_PLLSOURCE_PLL2_DIV_11 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV11 | RCC_CFGR2_PREDIV1SRC << 4U)
438 #define LL_RCC_PLLSOURCE_PLL2_DIV_12 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV12 | RCC_CFGR2_PREDIV1SRC << 4U)
439 #define LL_RCC_PLLSOURCE_PLL2_DIV_13 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV13 | RCC_CFGR2_PREDIV1SRC << 4U)
440 #define LL_RCC_PLLSOURCE_PLL2_DIV_14 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV14 | RCC_CFGR2_PREDIV1SRC << 4U)
441 #define LL_RCC_PLLSOURCE_PLL2_DIV_15 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV15 | RCC_CFGR2_PREDIV1SRC << 4U)
442 #define LL_RCC_PLLSOURCE_PLL2_DIV_16 (RCC_CFGR_PLLSRC | RCC_CFGR2_PREDIV1_DIV16 | RCC_CFGR2_PREDIV1SRC << 4U)
445 #define LL_RCC_PLLSOURCE_HSE_DIV_1 (RCC_CFGR_PLLSRC | 0x00000000U)
446 #define LL_RCC_PLLSOURCE_HSE_DIV_2 (RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE)
455 #if defined(RCC_CFGR2_PREDIV1)
456 #define LL_RCC_PREDIV_DIV_1 RCC_CFGR2_PREDIV1_DIV1
457 #define LL_RCC_PREDIV_DIV_2 RCC_CFGR2_PREDIV1_DIV2
458 #define LL_RCC_PREDIV_DIV_3 RCC_CFGR2_PREDIV1_DIV3
459 #define LL_RCC_PREDIV_DIV_4 RCC_CFGR2_PREDIV1_DIV4
460 #define LL_RCC_PREDIV_DIV_5 RCC_CFGR2_PREDIV1_DIV5
461 #define LL_RCC_PREDIV_DIV_6 RCC_CFGR2_PREDIV1_DIV6
462 #define LL_RCC_PREDIV_DIV_7 RCC_CFGR2_PREDIV1_DIV7
463 #define LL_RCC_PREDIV_DIV_8 RCC_CFGR2_PREDIV1_DIV8
464 #define LL_RCC_PREDIV_DIV_9 RCC_CFGR2_PREDIV1_DIV9
465 #define LL_RCC_PREDIV_DIV_10 RCC_CFGR2_PREDIV1_DIV10
466 #define LL_RCC_PREDIV_DIV_11 RCC_CFGR2_PREDIV1_DIV11
467 #define LL_RCC_PREDIV_DIV_12 RCC_CFGR2_PREDIV1_DIV12
468 #define LL_RCC_PREDIV_DIV_13 RCC_CFGR2_PREDIV1_DIV13
469 #define LL_RCC_PREDIV_DIV_14 RCC_CFGR2_PREDIV1_DIV14
470 #define LL_RCC_PREDIV_DIV_15 RCC_CFGR2_PREDIV1_DIV15
471 #define LL_RCC_PREDIV_DIV_16 RCC_CFGR2_PREDIV1_DIV16
473 #define LL_RCC_PREDIV_DIV_1 0x00000000U
474 #define LL_RCC_PREDIV_DIV_2 RCC_CFGR_PLLXTPRE
480 #if defined(RCC_PLLI2S_SUPPORT)
484 #define LL_RCC_PLLI2S_MUL_8 RCC_CFGR2_PLL3MUL8
485 #define LL_RCC_PLLI2S_MUL_9 RCC_CFGR2_PLL3MUL9
486 #define LL_RCC_PLLI2S_MUL_10 RCC_CFGR2_PLL3MUL10
487 #define LL_RCC_PLLI2S_MUL_11 RCC_CFGR2_PLL3MUL11
488 #define LL_RCC_PLLI2S_MUL_12 RCC_CFGR2_PLL3MUL12
489 #define LL_RCC_PLLI2S_MUL_13 RCC_CFGR2_PLL3MUL13
490 #define LL_RCC_PLLI2S_MUL_14 RCC_CFGR2_PLL3MUL14
491 #define LL_RCC_PLLI2S_MUL_16 RCC_CFGR2_PLL3MUL16
492 #define LL_RCC_PLLI2S_MUL_20 RCC_CFGR2_PLL3MUL20
499 #if defined(RCC_PLL2_SUPPORT)
503 #define LL_RCC_PLL2_MUL_8 RCC_CFGR2_PLL2MUL8
504 #define LL_RCC_PLL2_MUL_9 RCC_CFGR2_PLL2MUL9
505 #define LL_RCC_PLL2_MUL_10 RCC_CFGR2_PLL2MUL10
506 #define LL_RCC_PLL2_MUL_11 RCC_CFGR2_PLL2MUL11
507 #define LL_RCC_PLL2_MUL_12 RCC_CFGR2_PLL2MUL12
508 #define LL_RCC_PLL2_MUL_13 RCC_CFGR2_PLL2MUL13
509 #define LL_RCC_PLL2_MUL_14 RCC_CFGR2_PLL2MUL14
510 #define LL_RCC_PLL2_MUL_16 RCC_CFGR2_PLL2MUL16
511 #define LL_RCC_PLL2_MUL_20 RCC_CFGR2_PLL2MUL20
537 #define LL_RCC_WriteReg(__REG__, __VALUE__) WRITE_REG(RCC->__REG__, (__VALUE__))
544 #define LL_RCC_ReadReg(__REG__) READ_REG(RCC->__REG__)
553 #if defined(RCC_CFGR_PLLMULL6_5)
568 #define __LL_RCC_CALC_PLLCLK_FREQ(__INPUTFREQ__, __PLLMUL__) \
569 (((__PLLMUL__) != RCC_CFGR_PLLMULL6_5) ? \
570 ((__INPUTFREQ__) * ((((__PLLMUL__) & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos) + 2U)) :\
571 (((__INPUTFREQ__) * 13U) / 2U))
596 #define __LL_RCC_CALC_PLLCLK_FREQ(__INPUTFREQ__, __PLLMUL__) ((__INPUTFREQ__) * (((__PLLMUL__) >> RCC_CFGR_PLLMULL_Pos) + 2U))
599 #if defined(RCC_PLLI2S_SUPPORT)
633 #define __LL_RCC_CALC_PLLI2SCLK_FREQ(__INPUTFREQ__, __PLLI2SMUL__, __PLLI2SDIV__) (((__INPUTFREQ__) * (((__PLLI2SMUL__) >> RCC_CFGR2_PLL3MUL_Pos) + 2U)) / (((__PLLI2SDIV__) >> RCC_CFGR2_PREDIV2_Pos) + 1U))
636 #if defined(RCC_PLL2_SUPPORT)
670 #define __LL_RCC_CALC_PLL2CLK_FREQ(__INPUTFREQ__, __PLL2MUL__, __PLL2DIV__) (((__INPUTFREQ__) * (((__PLL2MUL__) >> RCC_CFGR2_PLL2MUL_Pos) + 2U)) / (((__PLL2DIV__) >> RCC_CFGR2_PREDIV2_Pos) + 1U))
690 #define __LL_RCC_CALC_HCLK_FREQ(__SYSCLKFREQ__, __AHBPRESCALER__) ((__SYSCLKFREQ__) >> AHBPrescTable[((__AHBPRESCALER__) & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_Pos])
705 #define __LL_RCC_CALC_PCLK1_FREQ(__HCLKFREQ__, __APB1PRESCALER__) ((__HCLKFREQ__) >> APBPrescTable[(__APB1PRESCALER__) >> RCC_CFGR_PPRE1_Pos])
720 #define __LL_RCC_CALC_PCLK2_FREQ(__HCLKFREQ__, __APB2PRESCALER__) ((__HCLKFREQ__) >> APBPrescTable[(__APB2PRESCALER__) >> RCC_CFGR_PPRE2_Pos])
799 #if defined(RCC_CFGR2_PREDIV2)
823 return (uint32_t)(
READ_BIT(
RCC->CFGR2, RCC_CFGR2_PREDIV2));
1171 #if defined(RCC_CFGR2_I2S2SRC)
1185 MODIFY_REG(
RCC->CFGR2, (I2SxSource & 0xFFFF0000U), (I2SxSource << 16U));
1189 #if defined(USB_OTG_FS) || defined(USB)
1205 #if defined(RCC_CFGR_USBPRE)
1228 #if defined(RCC_CFGR2_I2S2SRC)
1244 return (uint32_t)(
READ_BIT(
RCC->CFGR2, I2Sx) >> 16U | I2Sx);
1248 #if defined(USB_OTG_FS) || defined(USB)
1477 __STATIC_INLINE void LL_RCC_PLL_ConfigDomain_SYS(uint32_t Source, uint32_t PLLMul)
1481 #if defined(RCC_CFGR2_PREDIV1)
1482 #if defined(RCC_CFGR2_PREDIV1SRC)
1483 MODIFY_REG(
RCC->CFGR2, (RCC_CFGR2_PREDIV1 | RCC_CFGR2_PREDIV1SRC),
1484 (Source & RCC_CFGR2_PREDIV1) | ((Source & (RCC_CFGR2_PREDIV1SRC << 4U)) >> 4U));
1486 MODIFY_REG(
RCC->CFGR2, RCC_CFGR2_PREDIV1, (Source & RCC_CFGR2_PREDIV1));
1503 #if defined(RCC_CFGR2_PREDIV1SRC)
1504 MODIFY_REG(
RCC->CFGR2, RCC_CFGR2_PREDIV1SRC, ((PLLSource & (RCC_CFGR2_PREDIV1SRC << 4U)) >> 4U));
1522 #if defined(RCC_CFGR2_PREDIV1SRC)
1524 uint32_t predivsrc = (uint32_t)(
READ_BIT(
RCC->CFGR2, RCC_CFGR2_PREDIV1SRC) << 4U);
1525 return (uint32_t)(pllsrc | predivsrc);
1586 #if defined(RCC_CFGR2_PREDIV1)
1587 return (uint32_t)(
READ_BIT(
RCC->CFGR2, RCC_CFGR2_PREDIV1));
1597 #if defined(RCC_PLLI2S_SUPPORT)
1629 return (
READ_BIT(
RCC->CR, RCC_CR_PLL3RDY) == (RCC_CR_PLL3RDY));
1665 __STATIC_INLINE void LL_RCC_PLL_ConfigDomain_PLLI2S(uint32_t Divider, uint32_t Multiplicator)
1667 MODIFY_REG(
RCC->CFGR2, RCC_CFGR2_PREDIV2 | RCC_CFGR2_PLL3MUL, Divider | Multiplicator);
1686 return (uint32_t)(
READ_BIT(
RCC->CFGR2, RCC_CFGR2_PLL3MUL));
1694 #if defined(RCC_PLL2_SUPPORT)
1726 return (
READ_BIT(
RCC->CR, RCC_CR_PLL2RDY) == (RCC_CR_PLL2RDY));
1762 __STATIC_INLINE void LL_RCC_PLL_ConfigDomain_PLL2(uint32_t Divider, uint32_t Multiplicator)
1764 MODIFY_REG(
RCC->CFGR2, RCC_CFGR2_PREDIV2 | RCC_CFGR2_PLL2MUL, Divider | Multiplicator);
1783 return (uint32_t)(
READ_BIT(
RCC->CFGR2, RCC_CFGR2_PLL2MUL));
1845 #if defined(RCC_PLLI2S_SUPPORT)
1857 #if defined(RCC_PLL2_SUPPORT)
1929 #if defined(RCC_PLLI2S_SUPPORT)
1937 return (
READ_BIT(
RCC->CIR, RCC_CIR_PLL3RDYF) == (RCC_CIR_PLL3RDYF));
1941 #if defined(RCC_PLL2_SUPPORT)
1949 return (
READ_BIT(
RCC->CIR, RCC_CIR_PLL2RDYF) == (RCC_CIR_PLL2RDYF));
2091 #if defined(RCC_PLLI2S_SUPPORT)
2103 #if defined(RCC_PLL2_SUPPORT)
2165 #if defined(RCC_PLLI2S_SUPPORT)
2177 #if defined(RCC_PLL2_SUPPORT)
2239 #if defined(RCC_PLLI2S_SUPPORT)
2247 return (
READ_BIT(
RCC->CIR, RCC_CIR_PLL3RDYIE) == (RCC_CIR_PLL3RDYIE));
2251 #if defined(RCC_PLL2_SUPPORT)
2259 return (
READ_BIT(
RCC->CIR, RCC_CIR_PLL2RDYIE) == (RCC_CIR_PLL2RDYIE));
2267 #if defined(USE_FULL_LL_DRIVER)
2279 void LL_RCC_GetSystemClocksFreq(LL_RCC_ClocksTypeDef *RCC_Clocks);
2280 #if defined(RCC_CFGR2_I2S2SRC)
2281 uint32_t LL_RCC_GetI2SClockFreq(uint32_t I2SxSource);
2283 #if defined(USB_OTG_FS) || defined(USB)
2284 uint32_t LL_RCC_GetUSBClockFreq(uint32_t USBxSource);
2286 uint32_t LL_RCC_GetADCClockFreq(uint32_t ADCxSource);