stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_rcc.c
Go to the documentation of this file.
1 
68 /* Includes ------------------------------------------------------------------*/
69 #include "stm32h7xx_hal.h"
70 
80 #ifdef HAL_RCC_MODULE_ENABLED
81 
82 /* Private typedef -----------------------------------------------------------*/
83 /* Private define ------------------------------------------------------------*/
84 /* Private macro -------------------------------------------------------------*/
88 #define MCO1_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE()
89 #define MCO1_GPIO_PORT GPIOA
90 #define MCO1_PIN GPIO_PIN_8
91 
92 #define MCO2_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE()
93 #define MCO2_GPIO_PORT GPIOC
94 #define MCO2_PIN GPIO_PIN_9
95 
99 /* Private variables ---------------------------------------------------------*/
107 /* Private function prototypes -----------------------------------------------*/
108 /* Exported functions --------------------------------------------------------*/
109 
191 {
192  uint32_t tickstart;
193 
194  /* Increasing the CPU frequency */
196  {
197  /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
199 
200  /* Check that the new number of wait states is taken into account to access the Flash
201  memory by reading the FLASH_ACR register */
203  {
204  return HAL_ERROR;
205  }
206 
207  }
208 
209 
210  /* Get Start Tick */
211  tickstart = HAL_GetTick();
212 
213  /* Set HSION bit */
214  SET_BIT(RCC->CR, RCC_CR_HSION);
215 
216  /* Wait till HSI is ready */
217  while (READ_BIT(RCC->CR, RCC_CR_HSIRDY) == 0U)
218  {
219  if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE)
220  {
221  return HAL_TIMEOUT;
222  }
223  }
224 
225  /* Set HSITRIM[6:0] bits to the reset value */
226  SET_BIT(RCC->HSICFGR, RCC_HSICFGR_HSITRIM_6);
227 
228  /* Reset CFGR register */
229  CLEAR_REG(RCC->CFGR);
230 
231  /* Update the SystemCoreClock and SystemD2Clock global variables */
234 
235  /* Adapt Systick interrupt period */
237  {
238  return HAL_ERROR;
239  }
240 
241  /* Get Start Tick */
242  tickstart = HAL_GetTick();
243 
244  /* Wait till clock switch is ready */
245  while (READ_BIT(RCC->CFGR, RCC_CFGR_SWS) != 0U)
246  {
247  if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE)
248  {
249  return HAL_TIMEOUT;
250  }
251  }
252 
253  /* Get Start Tick */
254  tickstart = HAL_GetTick();
255 
256  /* Reset CSION, CSIKERON, HSEON, HSI48ON, HSECSSON, HSIDIV bits */
259 
260  /* Wait till HSE is disabled */
261  while (READ_BIT(RCC->CR, RCC_CR_HSERDY) != 0U)
262  {
263  if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)
264  {
265  return HAL_TIMEOUT;
266  }
267  }
268 
269  /* Get Start Tick */
270  tickstart = HAL_GetTick();
271 
272  /* Clear PLLON bit */
274 
275  /* Wait till PLL is disabled */
276  while (READ_BIT(RCC->CR, RCC_CR_PLL1RDY) != 0U)
277  {
278  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
279  {
280  return HAL_TIMEOUT;
281  }
282  }
283 
284  /* Get Start Tick */
285  tickstart = HAL_GetTick();
286 
287  /* Reset PLL2ON bit */
289 
290  /* Wait till PLL2 is disabled */
291  while (READ_BIT(RCC->CR, RCC_CR_PLL2RDY) != 0U)
292  {
293  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
294  {
295  return HAL_TIMEOUT;
296  }
297  }
298 
299  /* Get Start Tick */
300  tickstart = HAL_GetTick();
301 
302  /* Reset PLL3 bit */
304 
305  /* Wait till PLL3 is disabled */
306  while (READ_BIT(RCC->CR, RCC_CR_PLL3RDY) != 0U)
307  {
308  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
309  {
310  return HAL_TIMEOUT;
311  }
312  }
313 
314 #if defined(RCC_D1CFGR_HPRE)
315  /* Reset D1CFGR register */
316  CLEAR_REG(RCC->D1CFGR);
317 
318  /* Reset D2CFGR register */
319  CLEAR_REG(RCC->D2CFGR);
320 
321  /* Reset D3CFGR register */
322  CLEAR_REG(RCC->D3CFGR);
323 #else
324  /* Reset CDCFGR1 register */
325  CLEAR_REG(RCC->CDCFGR1);
326 
327  /* Reset CDCFGR2 register */
328  CLEAR_REG(RCC->CDCFGR2);
329 
330  /* Reset SRDCFGR register */
331  CLEAR_REG(RCC->SRDCFGR);
332 #endif
333 
334  /* Reset PLLCKSELR register to default value */
336 
337  /* Reset PLLCFGR register to default value */
338  WRITE_REG(RCC->PLLCFGR, 0x01FF0000U);
339 
340  /* Reset PLL1DIVR register to default value */
341  WRITE_REG(RCC->PLL1DIVR,0x01010280U);
342 
343  /* Reset PLL1FRACR register */
344  CLEAR_REG(RCC->PLL1FRACR);
345 
346  /* Reset PLL2DIVR register to default value */
347  WRITE_REG(RCC->PLL2DIVR,0x01010280U);
348 
349  /* Reset PLL2FRACR register */
350  CLEAR_REG(RCC->PLL2FRACR);
351 
352  /* Reset PLL3DIVR register to default value */
353  WRITE_REG(RCC->PLL3DIVR,0x01010280U);
354 
355  /* Reset PLL3FRACR register */
356  CLEAR_REG(RCC->PLL3FRACR);
357 
358 #if defined(RCC_CR_HSEEXT)
359  /* Reset HSEEXT */
360  CLEAR_BIT(RCC->CR, RCC_CR_HSEEXT);
361 #endif /* RCC_CR_HSEEXT */
362 
363  /* Reset HSEBYP bit */
365 
366  /* Disable all interrupts */
367  CLEAR_REG(RCC->CIER);
368 
369  /* Clear all interrupts flags */
370  WRITE_REG(RCC->CICR,0xFFFFFFFFU);
371 
372  /* Reset all RSR flags */
373  SET_BIT(RCC->RSR, RCC_RSR_RMVF);
374 
375  /* Decreasing the number of wait states because of lower CPU frequency */
377  {
378  /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
380 
381  /* Check that the new number of wait states is taken into account to access the Flash
382  memory by reading the FLASH_ACR register */
384  {
385  return HAL_ERROR;
386  }
387 
388 }
389 
390  return HAL_OK;
391 }
392 
407 __weak HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
408 {
409  uint32_t tickstart;
410  uint32_t temp1_pllckcfg, temp2_pllckcfg;
411 
412  /* Check Null pointer */
413  if(RCC_OscInitStruct == NULL)
414  {
415  return HAL_ERROR;
416  }
417 
418  /* Check the parameters */
420  /*------------------------------- HSE Configuration ------------------------*/
421  if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE)
422  {
423  /* Check the parameters */
424  assert_param(IS_RCC_HSE(RCC_OscInitStruct->HSEState));
425 
426  const uint32_t temp_sysclksrc = __HAL_RCC_GET_SYSCLK_SOURCE();
427  const uint32_t temp_pllckselr = RCC->PLLCKSELR;
428  /* When the HSE is used as system clock or clock source for PLL in these cases HSE will not disabled */
429  if((temp_sysclksrc == RCC_CFGR_SWS_HSE) || ((temp_sysclksrc == RCC_CFGR_SWS_PLL1) && ((temp_pllckselr & RCC_PLLCKSELR_PLLSRC) == RCC_PLLCKSELR_PLLSRC_HSE)))
430  {
431  if((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != 0U) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF))
432  {
433  return HAL_ERROR;
434  }
435  }
436  else
437  {
438  /* Set the new HSE configuration ---------------------------------------*/
439  __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState);
440 
441  /* Check the HSE State */
442  if(RCC_OscInitStruct->HSEState != RCC_HSE_OFF)
443  {
444  /* Get Start Tick*/
445  tickstart = HAL_GetTick();
446 
447  /* Wait till HSE is ready */
448  while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == 0U)
449  {
450  if((uint32_t) (HAL_GetTick() - tickstart ) > HSE_TIMEOUT_VALUE)
451  {
452  return HAL_TIMEOUT;
453  }
454  }
455  }
456  else
457  {
458  /* Get Start Tick*/
459  tickstart = HAL_GetTick();
460 
461  /* Wait till HSE is disabled */
462  while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != 0U)
463  {
464  if((uint32_t) (HAL_GetTick() - tickstart ) > HSE_TIMEOUT_VALUE)
465  {
466  return HAL_TIMEOUT;
467  }
468  }
469  }
470  }
471  }
472  /*----------------------------- HSI Configuration --------------------------*/
473  if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI)
474  {
475  /* Check the parameters */
476  assert_param(IS_RCC_HSI(RCC_OscInitStruct->HSIState));
478 
479  /* When the HSI is used as system clock it will not be disabled */
480  const uint32_t temp_sysclksrc = __HAL_RCC_GET_SYSCLK_SOURCE();
481  const uint32_t temp_pllckselr = RCC->PLLCKSELR;
482  if((temp_sysclksrc == RCC_CFGR_SWS_HSI) || ((temp_sysclksrc == RCC_CFGR_SWS_PLL1) && ((temp_pllckselr & RCC_PLLCKSELR_PLLSRC) == RCC_PLLCKSELR_PLLSRC_HSI)))
483  {
484  /* When HSI is used as system clock it will not be disabled */
485  if((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != 0U) && (RCC_OscInitStruct->HSIState == RCC_HSI_OFF))
486  {
487  return HAL_ERROR;
488  }
489  /* Otherwise, just the calibration is allowed */
490  else
491  {
492  /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/
494  }
495  }
496 
497  else
498  {
499  /* Check the HSI State */
500  if((RCC_OscInitStruct->HSIState)!= RCC_HSI_OFF)
501  {
502  /* Enable the Internal High Speed oscillator (HSI, HSIDIV2,HSIDIV4, or HSIDIV8) */
503  __HAL_RCC_HSI_CONFIG(RCC_OscInitStruct->HSIState);
504 
505  /* Get Start Tick*/
506  tickstart = HAL_GetTick();
507 
508  /* Wait till HSI is ready */
509  while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == 0U)
510  {
511  if((HAL_GetTick() - tickstart ) > HSI_TIMEOUT_VALUE)
512  {
513  return HAL_TIMEOUT;
514  }
515  }
516 
517  /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/
519  }
520  else
521  {
522  /* Disable the Internal High Speed oscillator (HSI). */
524 
525  /* Get Start Tick*/
526  tickstart = HAL_GetTick();
527 
528  /* Wait till HSI is disabled */
529  while(__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != 0U)
530  {
531  if((HAL_GetTick() - tickstart ) > HSI_TIMEOUT_VALUE)
532  {
533  return HAL_TIMEOUT;
534  }
535  }
536  }
537  }
538  }
539  /*----------------------------- CSI Configuration --------------------------*/
540  if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_CSI) == RCC_OSCILLATORTYPE_CSI)
541  {
542  /* Check the parameters */
543  assert_param(IS_RCC_CSI(RCC_OscInitStruct->CSIState));
545 
546  /* When the CSI is used as system clock it will not disabled */
547  const uint32_t temp_sysclksrc = __HAL_RCC_GET_SYSCLK_SOURCE();
548  const uint32_t temp_pllckselr = RCC->PLLCKSELR;
549  if((temp_sysclksrc == RCC_CFGR_SWS_CSI) || ((temp_sysclksrc == RCC_CFGR_SWS_PLL1) && ((temp_pllckselr & RCC_PLLCKSELR_PLLSRC) == RCC_PLLCKSELR_PLLSRC_CSI)))
550  {
551  /* When CSI is used as system clock it will not disabled */
552  if((__HAL_RCC_GET_FLAG(RCC_FLAG_CSIRDY) != 0U) && (RCC_OscInitStruct->CSIState != RCC_CSI_ON))
553  {
554  return HAL_ERROR;
555  }
556  /* Otherwise, just the calibration is allowed */
557  else
558  {
559  /* Adjusts the Internal High Speed oscillator (CSI) calibration value.*/
561  }
562  }
563  else
564  {
565  /* Check the CSI State */
566  if((RCC_OscInitStruct->CSIState)!= RCC_CSI_OFF)
567  {
568  /* Enable the Internal High Speed oscillator (CSI). */
570 
571  /* Get Start Tick*/
572  tickstart = HAL_GetTick();
573 
574  /* Wait till CSI is ready */
575  while(__HAL_RCC_GET_FLAG(RCC_FLAG_CSIRDY) == 0U)
576  {
577  if((HAL_GetTick() - tickstart ) > CSI_TIMEOUT_VALUE)
578  {
579  return HAL_TIMEOUT;
580  }
581  }
582 
583  /* Adjusts the Internal High Speed oscillator (CSI) calibration value.*/
585  }
586  else
587  {
588  /* Disable the Internal High Speed oscillator (CSI). */
590 
591  /* Get Start Tick*/
592  tickstart = HAL_GetTick();
593 
594  /* Wait till CSI is disabled */
595  while(__HAL_RCC_GET_FLAG(RCC_FLAG_CSIRDY) != 0U)
596  {
597  if((HAL_GetTick() - tickstart ) > CSI_TIMEOUT_VALUE)
598  {
599  return HAL_TIMEOUT;
600  }
601  }
602  }
603  }
604  }
605  /*------------------------------ LSI Configuration -------------------------*/
606  if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI)
607  {
608  /* Check the parameters */
609  assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState));
610 
611  /* Check the LSI State */
612  if((RCC_OscInitStruct->LSIState)!= RCC_LSI_OFF)
613  {
614  /* Enable the Internal Low Speed oscillator (LSI). */
616 
617  /* Get Start Tick*/
618  tickstart = HAL_GetTick();
619 
620  /* Wait till LSI is ready */
621  while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == 0U)
622  {
623  if((HAL_GetTick() - tickstart ) > LSI_TIMEOUT_VALUE)
624  {
625  return HAL_TIMEOUT;
626  }
627  }
628  }
629  else
630  {
631  /* Disable the Internal Low Speed oscillator (LSI). */
633 
634  /* Get Start Tick*/
635  tickstart = HAL_GetTick();
636 
637  /* Wait till LSI is ready */
638  while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != 0U)
639  {
640  if((HAL_GetTick() - tickstart ) > LSI_TIMEOUT_VALUE)
641  {
642  return HAL_TIMEOUT;
643  }
644  }
645  }
646  }
647 
648  /*------------------------------ HSI48 Configuration -------------------------*/
650  {
651  /* Check the parameters */
652  assert_param(IS_RCC_HSI48(RCC_OscInitStruct->HSI48State));
653 
654  /* Check the HSI48 State */
655  if((RCC_OscInitStruct->HSI48State)!= RCC_HSI48_OFF)
656  {
657  /* Enable the Internal Low Speed oscillator (HSI48). */
659 
660  /* Get time-out */
661  tickstart = HAL_GetTick();
662 
663  /* Wait till HSI48 is ready */
665  {
666  if((HAL_GetTick() - tickstart ) > HSI48_TIMEOUT_VALUE)
667  {
668  return HAL_TIMEOUT;
669  }
670  }
671  }
672  else
673  {
674  /* Disable the Internal Low Speed oscillator (HSI48). */
676 
677  /* Get time-out */
678  tickstart = HAL_GetTick();
679 
680  /* Wait till HSI48 is ready */
682  {
683  if((HAL_GetTick() - tickstart ) > HSI48_TIMEOUT_VALUE)
684  {
685  return HAL_TIMEOUT;
686  }
687  }
688  }
689  }
690  /*------------------------------ LSE Configuration -------------------------*/
691  if(((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE)
692  {
693  /* Check the parameters */
694  assert_param(IS_RCC_LSE(RCC_OscInitStruct->LSEState));
695 
696  /* Enable write access to Backup domain */
697  PWR->CR1 |= PWR_CR1_DBP;
698 
699  /* Wait for Backup domain Write protection disable */
700  tickstart = HAL_GetTick();
701 
702  while((PWR->CR1 & PWR_CR1_DBP) == 0U)
703  {
704  if((HAL_GetTick() - tickstart ) > RCC_DBP_TIMEOUT_VALUE)
705  {
706  return HAL_TIMEOUT;
707  }
708  }
709 
710  /* Set the new LSE configuration -----------------------------------------*/
711  __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState);
712  /* Check the LSE State */
713  if((RCC_OscInitStruct->LSEState) != RCC_LSE_OFF)
714  {
715  /* Get Start Tick*/
716  tickstart = HAL_GetTick();
717 
718  /* Wait till LSE is ready */
719  while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == 0U)
720  {
721  if((HAL_GetTick() - tickstart ) > RCC_LSE_TIMEOUT_VALUE)
722  {
723  return HAL_TIMEOUT;
724  }
725  }
726  }
727  else
728  {
729  /* Get Start Tick*/
730  tickstart = HAL_GetTick();
731 
732  /* Wait till LSE is disabled */
733  while(__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != 0U)
734  {
735  if((HAL_GetTick() - tickstart ) > RCC_LSE_TIMEOUT_VALUE)
736  {
737  return HAL_TIMEOUT;
738  }
739  }
740  }
741  }
742  /*-------------------------------- PLL Configuration -----------------------*/
743  /* Check the parameters */
744  assert_param(IS_RCC_PLL(RCC_OscInitStruct->PLL.PLLState));
745  if ((RCC_OscInitStruct->PLL.PLLState) != RCC_PLL_NONE)
746  {
747  /* Check if the PLL is used as system clock or not */
749  {
750  if((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON)
751  {
752  /* Check the parameters */
753  assert_param(IS_RCC_PLLSOURCE(RCC_OscInitStruct->PLL.PLLSource));
754  assert_param(IS_RCC_PLLRGE_VALUE(RCC_OscInitStruct->PLL.PLLRGE));
755  assert_param(IS_RCC_PLLVCO_VALUE(RCC_OscInitStruct->PLL.PLLVCOSEL));
756  assert_param(IS_RCC_PLLM_VALUE(RCC_OscInitStruct->PLL.PLLM));
757  assert_param(IS_RCC_PLLN_VALUE(RCC_OscInitStruct->PLL.PLLN));
758  assert_param(IS_RCC_PLLP_VALUE(RCC_OscInitStruct->PLL.PLLP));
759  assert_param(IS_RCC_PLLQ_VALUE(RCC_OscInitStruct->PLL.PLLQ));
760  assert_param(IS_RCC_PLLR_VALUE(RCC_OscInitStruct->PLL.PLLR));
761  assert_param(IS_RCC_PLLFRACN_VALUE(RCC_OscInitStruct->PLL.PLLFRACN));
762 
763  /* Disable the main PLL. */
765 
766  /* Get Start Tick*/
767  tickstart = HAL_GetTick();
768 
769  /* Wait till PLL is disabled */
770  while(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != 0U)
771  {
772  if((HAL_GetTick() - tickstart ) > PLL_TIMEOUT_VALUE)
773  {
774  return HAL_TIMEOUT;
775  }
776  }
777 
778  /* Configure the main PLL clock source, multiplication and division factors. */
779  __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource,
780  RCC_OscInitStruct->PLL.PLLM,
781  RCC_OscInitStruct->PLL.PLLN,
782  RCC_OscInitStruct->PLL.PLLP,
783  RCC_OscInitStruct->PLL.PLLQ,
784  RCC_OscInitStruct->PLL.PLLR);
785 
786  /* Disable PLLFRACN . */
788 
789  /* Configure PLL PLL1FRACN */
790  __HAL_RCC_PLLFRACN_CONFIG(RCC_OscInitStruct->PLL.PLLFRACN);
791 
792  /* Select PLL1 input reference frequency range: VCI */
793  __HAL_RCC_PLL_VCIRANGE(RCC_OscInitStruct->PLL.PLLRGE) ;
794 
795  /* Select PLL1 output frequency range : VCO */
796  __HAL_RCC_PLL_VCORANGE(RCC_OscInitStruct->PLL.PLLVCOSEL) ;
797 
798  /* Enable PLL System Clock output. */
800 
801  /* Enable PLL1Q Clock output. */
803 
804  /* Enable PLL1R Clock output. */
806 
807  /* Enable PLL1FRACN . */
809 
810  /* Enable the main PLL. */
812 
813  /* Get Start Tick*/
814  tickstart = HAL_GetTick();
815 
816  /* Wait till PLL is ready */
817  while(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == 0U)
818  {
819  if((HAL_GetTick() - tickstart ) > PLL_TIMEOUT_VALUE)
820  {
821  return HAL_TIMEOUT;
822  }
823  }
824  }
825  else
826  {
827  /* Disable the main PLL. */
829 
830  /* Get Start Tick*/
831  tickstart = HAL_GetTick();
832 
833  /* Wait till PLL is disabled */
834  while(__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != 0U)
835  {
836  if((HAL_GetTick() - tickstart ) > PLL_TIMEOUT_VALUE)
837  {
838  return HAL_TIMEOUT;
839  }
840  }
841  }
842  }
843  else
844  {
845  /* Do not return HAL_ERROR if request repeats the current configuration */
846  temp1_pllckcfg = RCC->PLLCKSELR;
847  temp2_pllckcfg = RCC->PLL1DIVR;
848  if(((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) ||
849  (READ_BIT(temp1_pllckcfg, RCC_PLLCKSELR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) ||
850  ((READ_BIT(temp1_pllckcfg, RCC_PLLCKSELR_DIVM1) >> RCC_PLLCKSELR_DIVM1_Pos) != RCC_OscInitStruct->PLL.PLLM) ||
851  (READ_BIT(temp2_pllckcfg, RCC_PLL1DIVR_N1) != (RCC_OscInitStruct->PLL.PLLN - 1U)) ||
852  ((READ_BIT(temp2_pllckcfg, RCC_PLL1DIVR_P1) >> RCC_PLL1DIVR_P1_Pos) != (RCC_OscInitStruct->PLL.PLLP - 1U)) ||
853  ((READ_BIT(temp2_pllckcfg, RCC_PLL1DIVR_Q1) >> RCC_PLL1DIVR_Q1_Pos) != (RCC_OscInitStruct->PLL.PLLQ - 1U)) ||
854  ((READ_BIT(temp2_pllckcfg, RCC_PLL1DIVR_R1) >> RCC_PLL1DIVR_R1_Pos) != (RCC_OscInitStruct->PLL.PLLR - 1U)))
855  {
856  return HAL_ERROR;
857  }
858  }
859  }
860  return HAL_OK;
861 }
862 
889 HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
890 {
891  HAL_StatusTypeDef halstatus;
892  uint32_t tickstart;
893  uint32_t common_system_clock;
894 
895  /* Check Null pointer */
896  if(RCC_ClkInitStruct == NULL)
897  {
898  return HAL_ERROR;
899  }
900 
901  /* Check the parameters */
902  assert_param(IS_RCC_CLOCKTYPE(RCC_ClkInitStruct->ClockType));
903  assert_param(IS_FLASH_LATENCY(FLatency));
904 
905  /* To correctly read data from FLASH memory, the number of wait states (LATENCY)
906  must be correctly programmed according to the frequency of the CPU clock
907  (HCLK) and the supply voltage of the device. */
908 
909  /* Increasing the CPU frequency */
910  if(FLatency > __HAL_FLASH_GET_LATENCY())
911  {
912  /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
913  __HAL_FLASH_SET_LATENCY(FLatency);
914 
915  /* Check that the new number of wait states is taken into account to access the Flash
916  memory by reading the FLASH_ACR register */
917  if(__HAL_FLASH_GET_LATENCY() != FLatency)
918  {
919  return HAL_ERROR;
920  }
921 
922  }
923 
924  /* Increasing the BUS frequency divider */
925  /*-------------------------- D1PCLK1/CDPCLK1 Configuration ---------------------------*/
926  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_D1PCLK1) == RCC_CLOCKTYPE_D1PCLK1)
927  {
928 #if defined (RCC_D1CFGR_D1PPRE)
929  if((RCC_ClkInitStruct->APB3CLKDivider) > (RCC->D1CFGR & RCC_D1CFGR_D1PPRE))
930  {
931  assert_param(IS_RCC_D1PCLK1(RCC_ClkInitStruct->APB3CLKDivider));
932  MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_D1PPRE, RCC_ClkInitStruct->APB3CLKDivider);
933  }
934 #else
935  if((RCC_ClkInitStruct->APB3CLKDivider) > (RCC->CDCFGR1 & RCC_CDCFGR1_CDPPRE))
936  {
937  assert_param(IS_RCC_CDPCLK1(RCC_ClkInitStruct->APB3CLKDivider));
938  MODIFY_REG(RCC->CDCFGR1, RCC_CDCFGR1_CDPPRE, RCC_ClkInitStruct->APB3CLKDivider);
939  }
940 #endif
941  }
942 
943  /*-------------------------- PCLK1 Configuration ---------------------------*/
944  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
945  {
946 #if defined (RCC_D2CFGR_D2PPRE1)
947  if((RCC_ClkInitStruct->APB1CLKDivider) > (RCC->D2CFGR & RCC_D2CFGR_D2PPRE1))
948  {
949  assert_param(IS_RCC_PCLK1(RCC_ClkInitStruct->APB1CLKDivider));
950  MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE1, (RCC_ClkInitStruct->APB1CLKDivider));
951  }
952 #else
953  if((RCC_ClkInitStruct->APB1CLKDivider) > (RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE1))
954  {
955  assert_param(IS_RCC_PCLK1(RCC_ClkInitStruct->APB1CLKDivider));
956  MODIFY_REG(RCC->CDCFGR2, RCC_CDCFGR2_CDPPRE1, (RCC_ClkInitStruct->APB1CLKDivider));
957  }
958 #endif
959  }
960  /*-------------------------- PCLK2 Configuration ---------------------------*/
961  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
962  {
963 #if defined(RCC_D2CFGR_D2PPRE2)
964  if((RCC_ClkInitStruct->APB2CLKDivider) > (RCC->D2CFGR & RCC_D2CFGR_D2PPRE2))
965  {
966  assert_param(IS_RCC_PCLK2(RCC_ClkInitStruct->APB2CLKDivider));
967  MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE2, (RCC_ClkInitStruct->APB2CLKDivider));
968  }
969 #else
970  if((RCC_ClkInitStruct->APB2CLKDivider) > (RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE2))
971  {
972  assert_param(IS_RCC_PCLK2(RCC_ClkInitStruct->APB2CLKDivider));
973  MODIFY_REG(RCC->CDCFGR2, RCC_CDCFGR2_CDPPRE2, (RCC_ClkInitStruct->APB2CLKDivider));
974  }
975 #endif
976  }
977 
978  /*-------------------------- D3PCLK1 Configuration ---------------------------*/
979  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_D3PCLK1) == RCC_CLOCKTYPE_D3PCLK1)
980  {
981 #if defined(RCC_D3CFGR_D3PPRE)
982  if((RCC_ClkInitStruct->APB4CLKDivider) > (RCC->D3CFGR & RCC_D3CFGR_D3PPRE))
983  {
984  assert_param(IS_RCC_D3PCLK1(RCC_ClkInitStruct->APB4CLKDivider));
985  MODIFY_REG(RCC->D3CFGR, RCC_D3CFGR_D3PPRE, (RCC_ClkInitStruct->APB4CLKDivider) );
986  }
987 #else
988  if((RCC_ClkInitStruct->APB4CLKDivider) > (RCC->SRDCFGR & RCC_SRDCFGR_SRDPPRE))
989  {
990  assert_param(IS_RCC_D3PCLK1(RCC_ClkInitStruct->APB4CLKDivider));
991  MODIFY_REG(RCC->SRDCFGR, RCC_SRDCFGR_SRDPPRE, (RCC_ClkInitStruct->APB4CLKDivider) );
992  }
993 #endif
994  }
995 
996  /*-------------------------- HCLK Configuration --------------------------*/
997  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK)
998  {
999 #if defined (RCC_D1CFGR_HPRE)
1000  if((RCC_ClkInitStruct->AHBCLKDivider) > (RCC->D1CFGR & RCC_D1CFGR_HPRE))
1001  {
1002  /* Set the new HCLK clock divider */
1003  assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider));
1004  MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider);
1005  }
1006 #else
1007  if((RCC_ClkInitStruct->AHBCLKDivider) > (RCC->CDCFGR1 & RCC_CDCFGR1_HPRE))
1008  {
1009  /* Set the new HCLK clock divider */
1010  assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider));
1011  MODIFY_REG(RCC->CDCFGR1, RCC_CDCFGR1_HPRE, RCC_ClkInitStruct->AHBCLKDivider);
1012  }
1013 #endif
1014  }
1015 
1016  /*------------------------- SYSCLK Configuration -------------------------*/
1017  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK)
1018  {
1019  assert_param(IS_RCC_SYSCLK(RCC_ClkInitStruct->SYSCLKDivider));
1020  assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource));
1021 #if defined(RCC_D1CFGR_D1CPRE)
1022  MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_D1CPRE, RCC_ClkInitStruct->SYSCLKDivider);
1023 #else
1024  MODIFY_REG(RCC->CDCFGR1, RCC_CDCFGR1_CDCPRE, RCC_ClkInitStruct->SYSCLKDivider);
1025 #endif
1026  /* HSE is selected as System Clock Source */
1027  if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE)
1028  {
1029  /* Check the HSE ready flag */
1031  {
1032  return HAL_ERROR;
1033  }
1034  }
1035  /* PLL is selected as System Clock Source */
1036  else if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK)
1037  {
1038  /* Check the PLL ready flag */
1040  {
1041  return HAL_ERROR;
1042  }
1043  }
1044  /* CSI is selected as System Clock Source */
1045  else if(RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_CSI)
1046  {
1047  /* Check the PLL ready flag */
1049  {
1050  return HAL_ERROR;
1051  }
1052  }
1053  /* HSI is selected as System Clock Source */
1054  else
1055  {
1056  /* Check the HSI ready flag */
1058  {
1059  return HAL_ERROR;
1060  }
1061  }
1062  MODIFY_REG(RCC->CFGR, RCC_CFGR_SW, RCC_ClkInitStruct->SYSCLKSource);
1063 
1064  /* Get Start Tick*/
1065  tickstart = HAL_GetTick();
1066 
1067  while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos))
1068  {
1069  if((HAL_GetTick() - tickstart ) > CLOCKSWITCH_TIMEOUT_VALUE)
1070  {
1071  return HAL_TIMEOUT;
1072  }
1073  }
1074 
1075  }
1076 
1077  /* Decreasing the BUS frequency divider */
1078  /*-------------------------- HCLK Configuration --------------------------*/
1079  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK)
1080  {
1081 #if defined(RCC_D1CFGR_HPRE)
1082  if((RCC_ClkInitStruct->AHBCLKDivider) < (RCC->D1CFGR & RCC_D1CFGR_HPRE))
1083  {
1084  /* Set the new HCLK clock divider */
1085  assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider));
1086  MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider);
1087  }
1088 #else
1089  if((RCC_ClkInitStruct->AHBCLKDivider) < (RCC->CDCFGR1 & RCC_CDCFGR1_HPRE))
1090  {
1091  /* Set the new HCLK clock divider */
1092  assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider));
1093  MODIFY_REG(RCC->CDCFGR1, RCC_CDCFGR1_HPRE, RCC_ClkInitStruct->AHBCLKDivider);
1094  }
1095 #endif
1096  }
1097 
1098  /* Decreasing the number of wait states because of lower CPU frequency */
1099  if(FLatency < __HAL_FLASH_GET_LATENCY())
1100  {
1101  /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
1102  __HAL_FLASH_SET_LATENCY(FLatency);
1103 
1104  /* Check that the new number of wait states is taken into account to access the Flash
1105  memory by reading the FLASH_ACR register */
1106  if(__HAL_FLASH_GET_LATENCY() != FLatency)
1107  {
1108  return HAL_ERROR;
1109  }
1110  }
1111 
1112  /*-------------------------- D1PCLK1/CDPCLK Configuration ---------------------------*/
1113  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_D1PCLK1) == RCC_CLOCKTYPE_D1PCLK1)
1114  {
1115 #if defined(RCC_D1CFGR_D1PPRE)
1116  if((RCC_ClkInitStruct->APB3CLKDivider) < (RCC->D1CFGR & RCC_D1CFGR_D1PPRE))
1117  {
1118  assert_param(IS_RCC_D1PCLK1(RCC_ClkInitStruct->APB3CLKDivider));
1119  MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_D1PPRE, RCC_ClkInitStruct->APB3CLKDivider);
1120  }
1121 #else
1122  if((RCC_ClkInitStruct->APB3CLKDivider) < (RCC->CDCFGR1 & RCC_CDCFGR1_CDPPRE))
1123  {
1124  assert_param(IS_RCC_CDPCLK1(RCC_ClkInitStruct->APB3CLKDivider));
1125  MODIFY_REG(RCC->CDCFGR1, RCC_CDCFGR1_CDPPRE, RCC_ClkInitStruct->APB3CLKDivider);
1126  }
1127 #endif
1128  }
1129 
1130  /*-------------------------- PCLK1 Configuration ---------------------------*/
1131  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
1132  {
1133 #if defined(RCC_D2CFGR_D2PPRE1)
1134  if((RCC_ClkInitStruct->APB1CLKDivider) < (RCC->D2CFGR & RCC_D2CFGR_D2PPRE1))
1135  {
1136  assert_param(IS_RCC_PCLK1(RCC_ClkInitStruct->APB1CLKDivider));
1137  MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE1, (RCC_ClkInitStruct->APB1CLKDivider));
1138  }
1139 #else
1140  if((RCC_ClkInitStruct->APB1CLKDivider) < (RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE1))
1141  {
1142  assert_param(IS_RCC_PCLK1(RCC_ClkInitStruct->APB1CLKDivider));
1143  MODIFY_REG(RCC->CDCFGR2, RCC_CDCFGR2_CDPPRE1, (RCC_ClkInitStruct->APB1CLKDivider));
1144  }
1145 #endif
1146  }
1147 
1148  /*-------------------------- PCLK2 Configuration ---------------------------*/
1149  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
1150  {
1151 #if defined (RCC_D2CFGR_D2PPRE2)
1152  if((RCC_ClkInitStruct->APB2CLKDivider) < (RCC->D2CFGR & RCC_D2CFGR_D2PPRE2))
1153  {
1154  assert_param(IS_RCC_PCLK2(RCC_ClkInitStruct->APB2CLKDivider));
1155  MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE2, (RCC_ClkInitStruct->APB2CLKDivider));
1156  }
1157 #else
1158  if((RCC_ClkInitStruct->APB2CLKDivider) < (RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE2))
1159  {
1160  assert_param(IS_RCC_PCLK2(RCC_ClkInitStruct->APB2CLKDivider));
1161  MODIFY_REG(RCC->CDCFGR2, RCC_CDCFGR2_CDPPRE2, (RCC_ClkInitStruct->APB2CLKDivider));
1162  }
1163 #endif
1164  }
1165 
1166  /*-------------------------- D3PCLK1/SRDPCLK1 Configuration ---------------------------*/
1167  if(((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_D3PCLK1) == RCC_CLOCKTYPE_D3PCLK1)
1168  {
1169 #if defined(RCC_D3CFGR_D3PPRE)
1170  if((RCC_ClkInitStruct->APB4CLKDivider) < (RCC->D3CFGR & RCC_D3CFGR_D3PPRE))
1171  {
1172  assert_param(IS_RCC_D3PCLK1(RCC_ClkInitStruct->APB4CLKDivider));
1173  MODIFY_REG(RCC->D3CFGR, RCC_D3CFGR_D3PPRE, (RCC_ClkInitStruct->APB4CLKDivider) );
1174  }
1175 #else
1176  if((RCC_ClkInitStruct->APB4CLKDivider) < (RCC->SRDCFGR & RCC_SRDCFGR_SRDPPRE))
1177  {
1178  assert_param(IS_RCC_SRDPCLK1(RCC_ClkInitStruct->APB4CLKDivider));
1179  MODIFY_REG(RCC->SRDCFGR, RCC_SRDCFGR_SRDPPRE, (RCC_ClkInitStruct->APB4CLKDivider) );
1180  }
1181 #endif
1182  }
1183 
1184  /* Update the SystemCoreClock global variable */
1185 #if defined(RCC_D1CFGR_D1CPRE)
1186  common_system_clock = HAL_RCC_GetSysClockFreq() >> ((D1CorePrescTable[(RCC->D1CFGR & RCC_D1CFGR_D1CPRE)>> RCC_D1CFGR_D1CPRE_Pos]) & 0x1FU);
1187 #else
1188  common_system_clock = HAL_RCC_GetSysClockFreq() >> ((D1CorePrescTable[(RCC->CDCFGR1 & RCC_CDCFGR1_CDCPRE)>> RCC_CDCFGR1_CDCPRE_Pos]) & 0x1FU);
1189 #endif
1190 
1191 #if defined(RCC_D1CFGR_HPRE)
1192  SystemD2Clock = (common_system_clock >> ((D1CorePrescTable[(RCC->D1CFGR & RCC_D1CFGR_HPRE)>> RCC_D1CFGR_HPRE_Pos]) & 0x1FU));
1193 #else
1194  SystemD2Clock = (common_system_clock >> ((D1CorePrescTable[(RCC->CDCFGR1 & RCC_CDCFGR1_HPRE)>> RCC_CDCFGR1_HPRE_Pos]) & 0x1FU));
1195 #endif
1196 
1197 #if defined(DUAL_CORE) && defined(CORE_CM4)
1199 #else
1200  SystemCoreClock = common_system_clock;
1201 #endif /* DUAL_CORE && CORE_CM4 */
1202 
1203  /* Configure the source of time base considering new system clocks settings*/
1204  halstatus = HAL_InitTick (uwTickPrio);
1205 
1206  return halstatus;
1207 }
1208 
1253 void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv)
1254 {
1255  GPIO_InitTypeDef GPIO_InitStruct;
1256  /* Check the parameters */
1257  assert_param(IS_RCC_MCO(RCC_MCOx));
1258  assert_param(IS_RCC_MCODIV(RCC_MCODiv));
1259  /* RCC_MCO1 */
1260  if(RCC_MCOx == RCC_MCO1)
1261  {
1262  assert_param(IS_RCC_MCO1SOURCE(RCC_MCOSource));
1263 
1264  /* MCO1 Clock Enable */
1265  MCO1_CLK_ENABLE();
1266 
1267  /* Configure the MCO1 pin in alternate function mode */
1268  GPIO_InitStruct.Pin = MCO1_PIN;
1269  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
1270  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
1271  GPIO_InitStruct.Pull = GPIO_NOPULL;
1272  GPIO_InitStruct.Alternate = GPIO_AF0_MCO;
1273  HAL_GPIO_Init(MCO1_GPIO_PORT, &GPIO_InitStruct);
1274 
1275  /* Mask MCO1 and MCO1PRE[3:0] bits then Select MCO1 clock source and pre-scaler */
1276  MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO1 | RCC_CFGR_MCO1PRE), (RCC_MCOSource | RCC_MCODiv));
1277  }
1278  else
1279  {
1280  assert_param(IS_RCC_MCO2SOURCE(RCC_MCOSource));
1281 
1282  /* MCO2 Clock Enable */
1283  MCO2_CLK_ENABLE();
1284 
1285  /* Configure the MCO2 pin in alternate function mode */
1286  GPIO_InitStruct.Pin = MCO2_PIN;
1287  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
1288  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
1289  GPIO_InitStruct.Pull = GPIO_NOPULL;
1290  GPIO_InitStruct.Alternate = GPIO_AF0_MCO;
1291  HAL_GPIO_Init(MCO2_GPIO_PORT, &GPIO_InitStruct);
1292 
1293  /* Mask MCO2 and MCO2PRE[3:0] bits then Select MCO2 clock source and pre-scaler */
1294  MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO2 | RCC_CFGR_MCO2PRE), (RCC_MCOSource | (RCC_MCODiv << 7U)));
1295  }
1296 }
1297 
1307 void HAL_RCC_EnableCSS(void)
1308 {
1309  SET_BIT(RCC->CR, RCC_CR_CSSHSEON) ;
1310 }
1311 
1316 void HAL_RCC_DisableCSS(void)
1317 {
1319 }
1320 
1355 uint32_t HAL_RCC_GetSysClockFreq(void)
1356 {
1357  uint32_t pllp, pllsource, pllm, pllfracen, hsivalue;
1358  float_t fracn1, pllvco;
1359  uint32_t sysclockfreq;
1360 
1361  /* Get SYSCLK source -------------------------------------------------------*/
1362 
1363  switch (RCC->CFGR & RCC_CFGR_SWS)
1364  {
1365  case RCC_CFGR_SWS_HSI: /* HSI used as system clock source */
1366 
1368  {
1369  sysclockfreq = (uint32_t) (HSI_VALUE >> (__HAL_RCC_GET_HSI_DIVIDER()>> 3));
1370  }
1371  else
1372  {
1373  sysclockfreq = (uint32_t) HSI_VALUE;
1374  }
1375 
1376  break;
1377 
1378  case RCC_CFGR_SWS_CSI: /* CSI used as system clock source */
1379  sysclockfreq = CSI_VALUE;
1380  break;
1381 
1382  case RCC_CFGR_SWS_HSE: /* HSE used as system clock source */
1383  sysclockfreq = HSE_VALUE;
1384  break;
1385 
1386  case RCC_CFGR_SWS_PLL1: /* PLL1 used as system clock source */
1387 
1388  /* PLL_VCO = (HSE_VALUE or HSI_VALUE or CSI_VALUE/ PLLM) * PLLN
1389  SYSCLK = PLL_VCO / PLLR
1390  */
1391  pllsource = (RCC->PLLCKSELR & RCC_PLLCKSELR_PLLSRC);
1392  pllm = ((RCC->PLLCKSELR & RCC_PLLCKSELR_DIVM1)>> 4) ;
1393  pllfracen = ((RCC-> PLLCFGR & RCC_PLLCFGR_PLL1FRACEN)>>RCC_PLLCFGR_PLL1FRACEN_Pos);
1394  fracn1 = (float_t)(uint32_t)(pllfracen* ((RCC->PLL1FRACR & RCC_PLL1FRACR_FRACN1)>> 3));
1395 
1396  if (pllm != 0U)
1397  {
1398  switch (pllsource)
1399  {
1400  case RCC_PLLSOURCE_HSI: /* HSI used as PLL clock source */
1401 
1403  {
1404  hsivalue= (HSI_VALUE >> (__HAL_RCC_GET_HSI_DIVIDER()>> 3));
1405  pllvco = ( (float_t)hsivalue / (float_t)pllm) * ((float_t)(uint32_t)(RCC->PLL1DIVR & RCC_PLL1DIVR_N1) + (fracn1/(float_t)0x2000) +(float_t)1 );
1406  }
1407  else
1408  {
1409  pllvco = ((float_t)HSI_VALUE / (float_t)pllm) * ((float_t)(uint32_t)(RCC->PLL1DIVR & RCC_PLL1DIVR_N1) + (fracn1/(float_t)0x2000) +(float_t)1 );
1410  }
1411  break;
1412 
1413  case RCC_PLLSOURCE_CSI: /* CSI used as PLL clock source */
1414  pllvco = ((float_t)CSI_VALUE / (float_t)pllm) * ((float_t)(uint32_t)(RCC->PLL1DIVR & RCC_PLL1DIVR_N1) + (fracn1/(float_t)0x2000) +(float_t)1 );
1415  break;
1416 
1417  case RCC_PLLSOURCE_HSE: /* HSE used as PLL clock source */
1418  pllvco = ((float_t)HSE_VALUE / (float_t)pllm) * ((float_t)(uint32_t)(RCC->PLL1DIVR & RCC_PLL1DIVR_N1) + (fracn1/(float_t)0x2000) +(float_t)1 );
1419  break;
1420 
1421  default:
1422  pllvco = ((float_t)CSI_VALUE / (float_t)pllm) * ((float_t)(uint32_t)(RCC->PLL1DIVR & RCC_PLL1DIVR_N1) + (fracn1/(float_t)0x2000) +(float_t)1 );
1423  break;
1424  }
1425  pllp = (((RCC->PLL1DIVR & RCC_PLL1DIVR_P1) >>9) + 1U ) ;
1426  sysclockfreq = (uint32_t)(float_t)(pllvco/(float_t)pllp);
1427  }
1428  else
1429  {
1430  sysclockfreq = 0U;
1431  }
1432  break;
1433 
1434  default:
1435  sysclockfreq = CSI_VALUE;
1436  break;
1437  }
1438 
1439  return sysclockfreq;
1440 }
1441 
1442 
1452 uint32_t HAL_RCC_GetHCLKFreq(void)
1453 {
1454 uint32_t common_system_clock;
1455 
1456 #if defined(RCC_D1CFGR_D1CPRE)
1457  common_system_clock = HAL_RCC_GetSysClockFreq() >> (D1CorePrescTable[(RCC->D1CFGR & RCC_D1CFGR_D1CPRE)>> RCC_D1CFGR_D1CPRE_Pos] & 0x1FU);
1458 #else
1459  common_system_clock = HAL_RCC_GetSysClockFreq() >> (D1CorePrescTable[(RCC->CDCFGR1 & RCC_CDCFGR1_CDCPRE)>> RCC_CDCFGR1_CDCPRE_Pos] & 0x1FU);
1460 #endif
1461 
1462 #if defined(RCC_D1CFGR_HPRE)
1463  SystemD2Clock = (common_system_clock >> ((D1CorePrescTable[(RCC->D1CFGR & RCC_D1CFGR_HPRE)>> RCC_D1CFGR_HPRE_Pos]) & 0x1FU));
1464 #else
1465  SystemD2Clock = (common_system_clock >> ((D1CorePrescTable[(RCC->CDCFGR1 & RCC_CDCFGR1_HPRE)>> RCC_CDCFGR1_HPRE_Pos]) & 0x1FU));
1466 #endif
1467 
1468 #if defined(DUAL_CORE) && defined(CORE_CM4)
1470 #else
1471  SystemCoreClock = common_system_clock;
1472 #endif /* DUAL_CORE && CORE_CM4 */
1473 
1474  return SystemD2Clock;
1475 }
1476 
1477 
1484 uint32_t HAL_RCC_GetPCLK1Freq(void)
1485 {
1486 #if defined (RCC_D2CFGR_D2PPRE1)
1487  /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/
1488  return (HAL_RCC_GetHCLKFreq() >> ((D1CorePrescTable[(RCC->D2CFGR & RCC_D2CFGR_D2PPRE1)>> RCC_D2CFGR_D2PPRE1_Pos]) & 0x1FU));
1489 #else
1490  /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/
1491  return (HAL_RCC_GetHCLKFreq() >> ((D1CorePrescTable[(RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE1)>> RCC_CDCFGR2_CDPPRE1_Pos]) & 0x1FU));
1492 #endif
1493 }
1494 
1495 
1502 uint32_t HAL_RCC_GetPCLK2Freq(void)
1503 {
1504  /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/
1505 #if defined(RCC_D2CFGR_D2PPRE2)
1506  return (HAL_RCC_GetHCLKFreq() >> ((D1CorePrescTable[(RCC->D2CFGR & RCC_D2CFGR_D2PPRE2)>> RCC_D2CFGR_D2PPRE2_Pos]) & 0x1FU));
1507 #else
1508  return (HAL_RCC_GetHCLKFreq() >> ((D1CorePrescTable[(RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE2)>> RCC_CDCFGR2_CDPPRE2_Pos]) & 0x1FU));
1509 #endif
1510 }
1511 
1519 void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
1520 {
1521  /* Set all possible values for the Oscillator type parameter ---------------*/
1523  RCC_OSCILLATORTYPE_LSE | RCC_OSCILLATORTYPE_LSI| RCC_OSCILLATORTYPE_HSI48;
1524 
1525  /* Get the HSE configuration -----------------------------------------------*/
1526 #if defined(RCC_CR_HSEEXT)
1527  if((RCC->CR &(RCC_CR_HSEBYP | RCC_CR_HSEEXT)) == RCC_CR_HSEBYP)
1528  {
1529  RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS;
1530  }
1531  else if((RCC->CR &(RCC_CR_HSEBYP | RCC_CR_HSEEXT)) == (RCC_CR_HSEBYP | RCC_CR_HSEEXT))
1532  {
1533  RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS_DIGITAL;
1534  }
1535  else if((RCC->CR &RCC_CR_HSEON) == RCC_CR_HSEON)
1536  {
1537  RCC_OscInitStruct->HSEState = RCC_HSE_ON;
1538  }
1539  else
1540  {
1541  RCC_OscInitStruct->HSEState = RCC_HSE_OFF;
1542  }
1543 #else
1544  if((RCC->CR &RCC_CR_HSEBYP) == RCC_CR_HSEBYP)
1545  {
1546  RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS;
1547  }
1548  else if((RCC->CR &RCC_CR_HSEON) == RCC_CR_HSEON)
1549  {
1550  RCC_OscInitStruct->HSEState = RCC_HSE_ON;
1551  }
1552  else
1553  {
1554  RCC_OscInitStruct->HSEState = RCC_HSE_OFF;
1555  }
1556 #endif /* RCC_CR_HSEEXT */
1557 
1558  /* Get the CSI configuration -----------------------------------------------*/
1559  if((RCC->CR &RCC_CR_CSION) == RCC_CR_CSION)
1560  {
1561  RCC_OscInitStruct->CSIState = RCC_CSI_ON;
1562  }
1563  else
1564  {
1565  RCC_OscInitStruct->CSIState = RCC_CSI_OFF;
1566  }
1567 
1568 #if defined(RCC_VER_X)
1569  if(HAL_GetREVID() <= REV_ID_Y)
1570  {
1571  RCC_OscInitStruct->CSICalibrationValue = (uint32_t)(READ_BIT(RCC->HSICFGR, HAL_RCC_REV_Y_CSITRIM_Msk) >> HAL_RCC_REV_Y_CSITRIM_Pos);
1572  }
1573  else
1574  {
1575  RCC_OscInitStruct->CSICalibrationValue = (uint32_t)(READ_BIT(RCC->CSICFGR, RCC_CSICFGR_CSITRIM) >> RCC_CSICFGR_CSITRIM_Pos);
1576  }
1577 #else
1578  RCC_OscInitStruct->CSICalibrationValue = (uint32_t)(READ_BIT(RCC->CSICFGR, RCC_CSICFGR_CSITRIM) >> RCC_CSICFGR_CSITRIM_Pos);
1579 #endif /*RCC_VER_X*/
1580 
1581  /* Get the HSI configuration -----------------------------------------------*/
1582  if((RCC->CR &RCC_CR_HSION) == RCC_CR_HSION)
1583  {
1584  RCC_OscInitStruct->HSIState = RCC_HSI_ON;
1585  }
1586  else
1587  {
1588  RCC_OscInitStruct->HSIState = RCC_HSI_OFF;
1589  }
1590 
1591 #if defined(RCC_VER_X)
1592  if(HAL_GetREVID() <= REV_ID_Y)
1593  {
1594  RCC_OscInitStruct->HSICalibrationValue = (uint32_t)(READ_BIT(RCC->HSICFGR, HAL_RCC_REV_Y_HSITRIM_Msk) >> HAL_RCC_REV_Y_HSITRIM_Pos);
1595  }
1596  else
1597  {
1598  RCC_OscInitStruct->HSICalibrationValue = (uint32_t)(READ_BIT(RCC->HSICFGR, RCC_HSICFGR_HSITRIM) >> RCC_HSICFGR_HSITRIM_Pos);
1599  }
1600 #else
1601  RCC_OscInitStruct->HSICalibrationValue = (uint32_t)(READ_BIT(RCC->HSICFGR, RCC_HSICFGR_HSITRIM) >> RCC_HSICFGR_HSITRIM_Pos);
1602 #endif /*RCC_VER_X*/
1603 
1604  /* Get the LSE configuration -----------------------------------------------*/
1605 #if defined(RCC_BDCR_LSEEXT)
1606  if((RCC->BDCR &(RCC_BDCR_LSEBYP|RCC_BDCR_LSEEXT)) == RCC_BDCR_LSEBYP)
1607  {
1608  RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS;
1609  }
1610  else if((RCC->BDCR &(RCC_BDCR_LSEBYP|RCC_BDCR_LSEEXT)) == (RCC_BDCR_LSEBYP|RCC_BDCR_LSEEXT))
1611  {
1612  RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS_DIGITAL;
1613  }
1614  else if((RCC->BDCR &RCC_BDCR_LSEON) == RCC_BDCR_LSEON)
1615  {
1616  RCC_OscInitStruct->LSEState = RCC_LSE_ON;
1617  }
1618  else
1619  {
1620  RCC_OscInitStruct->LSEState = RCC_LSE_OFF;
1621  }
1622 #else
1623  if((RCC->BDCR &RCC_BDCR_LSEBYP) == RCC_BDCR_LSEBYP)
1624  {
1625  RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS;
1626  }
1627  else if((RCC->BDCR &RCC_BDCR_LSEON) == RCC_BDCR_LSEON)
1628  {
1629  RCC_OscInitStruct->LSEState = RCC_LSE_ON;
1630  }
1631  else
1632  {
1633  RCC_OscInitStruct->LSEState = RCC_LSE_OFF;
1634  }
1635 #endif /* RCC_BDCR_LSEEXT */
1636 
1637  /* Get the LSI configuration -----------------------------------------------*/
1638  if((RCC->CSR &RCC_CSR_LSION) == RCC_CSR_LSION)
1639  {
1640  RCC_OscInitStruct->LSIState = RCC_LSI_ON;
1641  }
1642  else
1643  {
1644  RCC_OscInitStruct->LSIState = RCC_LSI_OFF;
1645  }
1646 
1647  /* Get the HSI48 configuration ---------------------------------------------*/
1648  if((RCC->CR & RCC_CR_HSI48ON) == RCC_CR_HSI48ON)
1649  {
1650  RCC_OscInitStruct->HSI48State = RCC_HSI48_ON;
1651  }
1652  else
1653  {
1654  RCC_OscInitStruct->HSI48State = RCC_HSI48_OFF;
1655  }
1656 
1657  /* Get the PLL configuration -----------------------------------------------*/
1658  if((RCC->CR &RCC_CR_PLLON) == RCC_CR_PLLON)
1659  {
1660  RCC_OscInitStruct->PLL.PLLState = RCC_PLL_ON;
1661  }
1662  else
1663  {
1664  RCC_OscInitStruct->PLL.PLLState = RCC_PLL_OFF;
1665  }
1666  RCC_OscInitStruct->PLL.PLLSource = (uint32_t)(RCC->PLLCKSELR & RCC_PLLCKSELR_PLLSRC);
1667  RCC_OscInitStruct->PLL.PLLM = (uint32_t)((RCC->PLLCKSELR & RCC_PLLCKSELR_DIVM1)>> RCC_PLLCKSELR_DIVM1_Pos);
1668  RCC_OscInitStruct->PLL.PLLN = (uint32_t)((RCC->PLL1DIVR & RCC_PLL1DIVR_N1) >> RCC_PLL1DIVR_N1_Pos)+ 1U;
1669  RCC_OscInitStruct->PLL.PLLR = (uint32_t)((RCC->PLL1DIVR & RCC_PLL1DIVR_R1) >> RCC_PLL1DIVR_R1_Pos)+ 1U;
1670  RCC_OscInitStruct->PLL.PLLP = (uint32_t)((RCC->PLL1DIVR & RCC_PLL1DIVR_P1) >> RCC_PLL1DIVR_P1_Pos)+ 1U;
1671  RCC_OscInitStruct->PLL.PLLQ = (uint32_t)((RCC->PLL1DIVR & RCC_PLL1DIVR_Q1) >> RCC_PLL1DIVR_Q1_Pos)+ 1U;
1672  RCC_OscInitStruct->PLL.PLLRGE = (uint32_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLL1RGE));
1673  RCC_OscInitStruct->PLL.PLLVCOSEL = (uint32_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLL1VCOSEL) >> RCC_PLLCFGR_PLL1VCOSEL_Pos);
1674  RCC_OscInitStruct->PLL.PLLFRACN = (uint32_t)(((RCC->PLL1FRACR & RCC_PLL1FRACR_FRACN1) >> RCC_PLL1FRACR_FRACN1_Pos));
1675 }
1676 
1685 void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency)
1686 {
1687  /* Set all possible values for the Clock type parameter --------------------*/
1690 
1691  /* Get the SYSCLK configuration --------------------------------------------*/
1692  RCC_ClkInitStruct->SYSCLKSource = (uint32_t)(RCC->CFGR & RCC_CFGR_SW);
1693 
1694 #if defined(RCC_D1CFGR_D1CPRE)
1695  /* Get the SYSCLK configuration ----------------------------------------------*/
1696  RCC_ClkInitStruct->SYSCLKDivider = (uint32_t)(RCC->D1CFGR & RCC_D1CFGR_D1CPRE);
1697 
1698  /* Get the D1HCLK configuration ----------------------------------------------*/
1699  RCC_ClkInitStruct->AHBCLKDivider = (uint32_t)(RCC->D1CFGR & RCC_D1CFGR_HPRE);
1700 
1701  /* Get the APB3 configuration ----------------------------------------------*/
1702  RCC_ClkInitStruct->APB3CLKDivider = (uint32_t)(RCC->D1CFGR & RCC_D1CFGR_D1PPRE);
1703 
1704  /* Get the APB1 configuration ----------------------------------------------*/
1705  RCC_ClkInitStruct->APB1CLKDivider = (uint32_t)(RCC->D2CFGR & RCC_D2CFGR_D2PPRE1);
1706 
1707  /* Get the APB2 configuration ----------------------------------------------*/
1708  RCC_ClkInitStruct->APB2CLKDivider = (uint32_t)(RCC->D2CFGR & RCC_D2CFGR_D2PPRE2);
1709 
1710  /* Get the APB4 configuration ----------------------------------------------*/
1711  RCC_ClkInitStruct->APB4CLKDivider = (uint32_t)(RCC->D3CFGR & RCC_D3CFGR_D3PPRE);
1712 #else
1713  /* Get the SYSCLK configuration ----------------------------------------------*/
1714  RCC_ClkInitStruct->SYSCLKDivider = (uint32_t)(RCC->CDCFGR1 & RCC_CDCFGR1_CDCPRE);
1715 
1716  /* Get the D1HCLK configuration ----------------------------------------------*/
1717  RCC_ClkInitStruct->AHBCLKDivider = (uint32_t)(RCC->CDCFGR1 & RCC_CDCFGR1_HPRE);
1718 
1719  /* Get the APB3 configuration ----------------------------------------------*/
1720  RCC_ClkInitStruct->APB3CLKDivider = (uint32_t)(RCC->CDCFGR1 & RCC_CDCFGR1_CDPPRE);
1721 
1722  /* Get the APB1 configuration ----------------------------------------------*/
1723  RCC_ClkInitStruct->APB1CLKDivider = (uint32_t)(RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE1);
1724 
1725  /* Get the APB2 configuration ----------------------------------------------*/
1726  RCC_ClkInitStruct->APB2CLKDivider = (uint32_t)(RCC->CDCFGR2 & RCC_CDCFGR2_CDPPRE2);
1727 
1728  /* Get the APB4 configuration ----------------------------------------------*/
1729  RCC_ClkInitStruct->APB4CLKDivider = (uint32_t)(RCC->SRDCFGR & RCC_SRDCFGR_SRDPPRE);
1730 #endif
1731 
1732  /* Get the Flash Wait State (Latency) configuration ------------------------*/
1733  *pFLatency = (uint32_t)(FLASH->ACR & FLASH_ACR_LATENCY);
1734 }
1735 
1741 void HAL_RCC_NMI_IRQHandler(void)
1742 {
1743  /* Check RCC CSSF flag */
1745  {
1746  /* RCC Clock Security System interrupt user callback */
1748 
1749  /* Clear RCC CSS pending bit */
1751  }
1752 }
1753 
1758 __weak void HAL_RCC_CCSCallback(void)
1759 {
1760  /* NOTE : This function Should not be modified, when the callback is needed,
1761  the HAL_RCC_CCSCallback could be implemented in the user file
1762  */
1763 }
1764 
1773 #endif /* HAL_RCC_MODULE_ENABLED */
1774 
1782 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
RCC_CR_PLL1ON
#define RCC_CR_PLL1ON
Definition: stm32h735xx.h:14853
SystemD2Clock
uint32_t SystemD2Clock
Definition: stm32h735/stm32h735g-dk/Src/system_stm32h7xx.c:114
assert_param
#define assert_param(expr)
Include module's header file.
Definition: stm32f407/stm32f407g-disc1/Inc/stm32f4xx_hal_conf.h:353
RCC_ClkInitTypeDef::SYSCLKDivider
uint32_t SYSCLKDivider
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:132
RCC_CR_HSIDIV
#define RCC_CR_HSIDIV
Definition: stm32h735xx.h:14805
RCC_D2CFGR_D2PPRE2_Pos
#define RCC_D2CFGR_D2PPRE2_Pos
Definition: stm32h735xx.h:15152
RCC_D1CFGR_HPRE_Pos
#define RCC_D1CFGR_HPRE_Pos
Definition: stm32h735xx.h:15037
IS_RCC_CSI
#define IS_RCC_CSI(CSI)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8067
RCC_PLLInitTypeDef::PLLQ
uint32_t PLLQ
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:65
__HAL_RCC_HSE_CONFIG
#define __HAL_RCC_HSE_CONFIG(__STATE__)
Macro to configure the External High Speed oscillator (HSE).
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:895
IS_RCC_CSICALIBRATION_VALUE
#define IS_RCC_CSICALIBRATION_VALUE(VALUE)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8240
RCC_PLLCFGR_PLL1RGE
#define RCC_PLLCFGR_PLL1RGE
Definition: stm32h735xx.h:15253
RCC_PLLCKSELR_DIVM1_Pos
#define RCC_PLLCKSELR_DIVM1_Pos
Definition: stm32h735xx.h:15213
RCC_PLL1DIVR_R1
#define RCC_PLL1DIVR_R1
Definition: stm32h735xx.h:15330
GPIO_MODE_AF_PP
#define GPIO_MODE_AF_PP
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:122
HAL_StatusTypeDef
HAL_StatusTypeDef
HAL Status structures definition
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:40
RCC_CSICFGR_CSITRIM_Pos
#define RCC_CSICFGR_CSITRIM_Pos
Definition: stm32h735xx.h:14942
RCC_PLL1DIVR_Q1
#define RCC_PLL1DIVR_Q1
Definition: stm32h735xx.h:15327
RCC_D1CFGR_D1CPRE_Pos
#define RCC_D1CFGR_D1CPRE_Pos
Definition: stm32h735xx.h:15094
RCC_PLLSOURCE_HSI
#define RCC_PLLSOURCE_HSI
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:181
RCC_PLLInitTypeDef::PLLState
uint32_t PLLState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:49
PWR
#define PWR
Definition: stm32f407xx.h:1083
HSI_TIMEOUT_VALUE
#define HSI_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1339
RCC_PLLInitTypeDef::PLLFRACN
uint32_t PLLFRACN
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:78
RCC_PLLCFGR_PLL1FRACEN_Pos
#define RCC_PLLCFGR_PLL1FRACEN_Pos
Definition: stm32h735xx.h:15245
RCC_SYSCLKSOURCE_CSI
#define RCC_SYSCLKSOURCE_CSI
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:328
RCC_FLAG_CSIRDY
#define RCC_FLAG_CSIRDY
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:653
IS_RCC_PLLSOURCE
#define IS_RCC_PLLSOURCE(SOURCE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1373
RCC_LSE_OFF
#define RCC_LSE_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:130
IS_RCC_PCLK2
#define IS_RCC_PCLK2(PCLK2)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8130
NULL
#define NULL
Definition: porcupine/demo/c/dr_libs/tests/external/miniaudio/extras/speex_resampler/thirdparty/resample.c:92
HAL_RCC_GetOscConfig
void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
GPIO_InitTypeDef
GPIO Init structure definition
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:47
RCC_PLL_ON
#define RCC_PLL_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:162
IS_RCC_PLLRGE_VALUE
#define IS_RCC_PLLRGE_VALUE(VALUE)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8077
RCC_CR_HSIDIVF
#define RCC_CR_HSIDIVF
Definition: stm32h735xx.h:14813
RCC_FLAG_HSERDY
#define RCC_FLAG_HSERDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:350
RCC_ClkInitTypeDef
RCC System, AHB and APB busses clock configuration structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:77
GPIO_AF0_MCO
#define GPIO_AF0_MCO
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_gpio_ex.h:54
RCC_PLLInitTypeDef::PLLP
uint32_t PLLP
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:62
HSE_TIMEOUT_VALUE
#define HSE_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1338
RCC_PLLCFGR_PLL1VCOSEL_Pos
#define RCC_PLLCFGR_PLL1VCOSEL_Pos
Definition: stm32h735xx.h:15248
RCC_D1CFGR_D1PPRE
#define RCC_D1CFGR_D1PPRE
Definition: stm32h735xx.h:15075
RCC_CSI_ON
#define RCC_CSI_ON
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:243
__HAL_RCC_LSE_CONFIG
#define __HAL_RCC_LSE_CONFIG(__STATE__)
Macro to configure the External Low Speed oscillator (LSE).
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:938
RCC_OscInitTypeDef
RCC Internal/External Oscillator (HSE, HSI, LSE and LSI) configuration structure definition.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:51
RCC_FLAG_HSIDIV
#define RCC_FLAG_HSIDIV
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:652
RCC_ClkInitTypeDef::APB3CLKDivider
uint32_t APB3CLKDivider
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:138
__HAL_RCC_HSI_DISABLE
#define __HAL_RCC_HSI_DISABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:837
GPIO_InitTypeDef::Alternate
uint32_t Alternate
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:61
RCC_OSCILLATORTYPE_HSI48
#define RCC_OSCILLATORTYPE_HSI48
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:168
PLL_TIMEOUT_VALUE
#define PLL_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:6854
RCC_OscInitTypeDef::HSI48State
uint32_t HSI48State
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:107
RCC_OscInitTypeDef::HSICalibrationValue
uint32_t HSICalibrationValue
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:65
RCC_FLAG_LSERDY
#define RCC_FLAG_LSERDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:355
IS_RCC_CLOCKTYPE
#define IS_RCC_CLOCKTYPE(CLK)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1426
IS_RCC_OSCILLATORTYPE
#define IS_RCC_OSCILLATORTYPE(OSCILLATOR)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1359
RCC_ClkInitTypeDef::APB2CLKDivider
uint32_t APB2CLKDivider
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:91
RCC_PLLInitTypeDef::PLLM
uint32_t PLLM
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:55
RCC_CFGR_MCO1
#define RCC_CFGR_MCO1
Definition: stm32f407xx.h:9614
RCC_CR_HSIRDY
#define RCC_CR_HSIRDY
Definition: stm32f407xx.h:9431
RCC_FLAG_HSIRDY
#define RCC_FLAG_HSIRDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:349
RCC_IT_CSS
#define RCC_IT_CSS
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:334
RCC_CFGR_SWS_Pos
#define RCC_CFGR_SWS_Pos
Definition: stm32f407xx.h:9544
RCC_PLLCKSELR_DIVM1_5
#define RCC_PLLCKSELR_DIVM1_5
Definition: stm32h735xx.h:15221
RCC_OscInitTypeDef::LSEState
uint32_t LSEState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:59
HAL_RCC_GetPCLK2Freq
uint32_t HAL_RCC_GetPCLK2Freq(void)
RCC_BDCR_LSEBYP
#define RCC_BDCR_LSEBYP
Definition: stm32f407xx.h:10281
__HAL_RCC_PLL_VCORANGE
#define __HAL_RCC_PLL_VCORANGE(__RCC_PLL1VCORange__)
Macro to select the PLL1 reference frequency range.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7654
IS_RCC_MCO2SOURCE
#define IS_RCC_MCO2SOURCE(SOURCE)
Definition: stm32f7xx_hal_rcc.h:1258
HAL_RCC_GetClockConfig
void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency)
CLEAR_REG
#define CLEAR_REG(REG)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:218
HAL_ERROR
@ HAL_ERROR
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:43
RCC_HSICFGR_HSITRIM
#define RCC_HSICFGR_HSITRIM
Definition: stm32h735xx.h:14899
FLASH_LATENCY_DEFAULT
#define FLASH_LATENCY_DEFAULT
Definition: stm32h735xx.h:11056
CLEAR_BIT
#define CLEAR_BIT(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:214
HAL_GetTick
uint32_t HAL_GetTick(void)
Provides a tick value in millisecond.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:323
RCC_CR_HSI48ON
#define RCC_CR_HSI48ON
Definition: stm32h735xx.h:14825
RCC_CFGR_MCO2PRE
#define RCC_CFGR_MCO2PRE
Definition: stm32f407xx.h:9631
RCC_PLLCKSELR_PLLSRC_HSI
#define RCC_PLLCKSELR_PLLSRC_HSI
Definition: stm32h735xx.h:15202
RCC_CR_HSEON
#define RCC_CR_HSEON
Definition: stm32f407xx.h:9456
RCC_FLAG_PLLRDY
#define RCC_FLAG_PLLRDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:351
IS_RCC_SRDPCLK1
#define IS_RCC_SRDPCLK1(SRDPCLK1)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8134
RCC_PLLCFGR_PLL1FRACEN
#define RCC_PLLCFGR_PLL1FRACEN
Definition: stm32h735xx.h:15247
uwTickPrio
uint32_t uwTickPrio
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:95
RCC_PLLCKSELR_PLLSRC_CSI
#define RCC_PLLCKSELR_PLLSRC_CSI
Definition: stm32h735xx.h:15205
IS_RCC_PCLK1
#define IS_RCC_PCLK1(PCLK1)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8126
RCC_CR_HSERDY
#define RCC_CR_HSERDY
Definition: stm32f407xx.h:9459
HAL_RCC_NMI_IRQHandler
void HAL_RCC_NMI_IRQHandler(void)
RCC_PLL1_DIVR
#define RCC_PLL1_DIVR
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:278
__HAL_RCC_PLL_DISABLE
#define __HAL_RCC_PLL_DISABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1038
RCC_CR_CSSHSEON
#define RCC_CR_CSSHSEON
Definition: stm32h735xx.h:14848
IS_RCC_PLLQ_VALUE
#define IS_RCC_PLLQ_VALUE(VALUE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1418
__HAL_FLASH_SET_LATENCY
#define __HAL_FLASH_SET_LATENCY(__LATENCY__)
Set the FLASH Latency.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash.h:178
RCC_SYSCLKSOURCE_PLLCLK
#define RCC_SYSCLKSOURCE_PLLCLK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:205
HAL_RCC_DeInit
HAL_StatusTypeDef HAL_RCC_DeInit(void)
RCC_PLL1_DIVQ
#define RCC_PLL1_DIVQ
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:277
IS_RCC_D1PCLK1
#define IS_RCC_D1PCLK1
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8124
HAL_OK
@ HAL_OK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:42
IS_RCC_MCO1SOURCE
#define IS_RCC_MCO1SOURCE(SOURCE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1434
__HAL_RCC_PLLFRACN_ENABLE
#define __HAL_RCC_PLLFRACN_ENABLE()
Enables or disables Fractional Part Of The Multiplication Factor of PLL1 VCO.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7547
RCC_HSE_OFF
#define RCC_HSE_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:120
RCC_D1CFGR_HPRE
#define RCC_D1CFGR_HPRE
Definition: stm32h735xx.h:15039
RCC_PLLCFGR_PLL1VCOSEL
#define RCC_PLLCFGR_PLL1VCOSEL
Definition: stm32h735xx.h:15250
REV_ID_Y
#define REV_ID_Y
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal.h:60
RCC_CR_PLL2ON
#define RCC_CR_PLL2ON
Definition: stm32h735xx.h:14859
HAL_GPIO_Init
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
RCC_CFGR_MCO2
#define RCC_CFGR_MCO2
Definition: stm32f407xx.h:9638
RCC_PLL_NONE
#define RCC_PLL_NONE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:160
__HAL_RCC_HSI_CONFIG
#define __HAL_RCC_HSI_CONFIG(__STATE__)
Enable or disable peripheral bus clock when D3 domain is in DRUN.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7133
RCC_CLOCKTYPE_PCLK1
#define RCC_CLOCKTYPE_PCLK1
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:192
RCC_HSI48_OFF
#define RCC_HSI48_OFF
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:222
RCC_OscInitTypeDef::HSIState
uint32_t HSIState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:62
RCC_CSICFGR_CSITRIM
#define RCC_CSICFGR_CSITRIM
Definition: stm32h735xx.h:14944
GPIO_InitTypeDef::Mode
uint32_t Mode
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:52
RCC_RSR_RMVF
#define RCC_RSR_RMVF
Definition: stm32h735xx.h:16773
RCC_CFGR_SWS
#define RCC_CFGR_SWS
Definition: stm32f407xx.h:9546
__HAL_RCC_GET_IT
#define __HAL_RCC_GET_IT(__INTERRUPT__)
Check the RCC's interrupt has occurred or not.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1204
RCC_PLLCKSELR_DIVM1
#define RCC_PLLCKSELR_DIVM1
Definition: stm32h735xx.h:15215
FLASH_ACR_LATENCY
#define FLASH_ACR_LATENCY
Definition: stm32f407xx.h:6678
RCC_D2CFGR_D2PPRE1_Pos
#define RCC_D2CFGR_D2PPRE1_Pos
Definition: stm32h735xx.h:15130
RCC_PLLInitTypeDef::PLLR
uint32_t PLLR
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:71
HSI_VALUE
#define HSI_VALUE
Internal High Speed oscillator (HSI) value. This value is used by the RCC HAL module to compute the s...
Definition: stm32f407/stm32f407g-disc1/Inc/stm32f4xx_hal_conf.h:82
GPIO_InitTypeDef::Pull
uint32_t Pull
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:55
__HAL_FLASH_GET_LATENCY
#define __HAL_FLASH_GET_LATENCY()
Get the FLASH Latency.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash.h:185
GPIO_NOPULL
#define GPIO_NOPULL
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:154
__HAL_RCC_PLLCLKOUT_ENABLE
#define __HAL_RCC_PLLCLKOUT_ENABLE(__RCC_PLL1ClockOut__)
Enables or disables each clock output (PLL_P_CLK, PLL_Q_CLK, PLL_R_CLK)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7537
RCC_PLL1DIVR_P1_Pos
#define RCC_PLL1DIVR_P1_Pos
Definition: stm32h735xx.h:15322
IS_RCC_MCO
#define IS_RCC_MCO(MCOx)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1432
RCC_CFGR_SW
#define RCC_CFGR_SW
Definition: stm32f407xx.h:9535
RCC_HSE_BYPASS
#define RCC_HSE_BYPASS
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:122
CSI_VALUE
#define CSI_VALUE
Internal oscillator (CSI) default value. This value is the default CSI value after Reset.
Definition: stm32h735/stm32h735g-dk/Inc/stm32h7xx_hal_conf.h:120
HAL_GetREVID
uint32_t HAL_GetREVID(void)
Returns the device revision identifier.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:450
IS_RCC_PLLVCO_VALUE
#define IS_RCC_PLLVCO_VALUE(VALUE)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8082
RCC_PLLInitTypeDef::PLLSource
uint32_t PLLSource
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:52
RCC_CR_HSIKERON
#define RCC_CR_HSIKERON
Definition: stm32h735xx.h:14799
IS_RCC_CDPCLK1
#define IS_RCC_CDPCLK1(CDPCLK1)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8120
RCC_CFGR_SWS_PLL1
#define RCC_CFGR_SWS_PLL1
Definition: stm32h735xx.h:14977
HAL_RCC_ClockConfig
HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
RCC_ClkInitTypeDef::AHBCLKDivider
uint32_t AHBCLKDivider
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:85
SystemCoreClock
uint32_t SystemCoreClock
Definition: system_MIMXRT1052.c:69
__HAL_RCC_CLEAR_IT
#define __HAL_RCC_CLEAR_IT(__INTERRUPT__)
Clear the RCC's interrupt pending bits (Perform Byte access to RCC_CIR[23:16] bits to clear the selec...
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1190
RCC_CR_PLL3ON
#define RCC_CR_PLL3ON
Definition: stm32h735xx.h:14865
RCC_PLLInitTypeDef::PLLRGE
uint32_t PLLRGE
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:73
RCC_CR_PLLON
#define RCC_CR_PLLON
Definition: stm32f407xx.h:9468
MODIFY_REG
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:224
RCC_OSCILLATORTYPE_HSI
#define RCC_OSCILLATORTYPE_HSI
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:110
RCC_CLOCKTYPE_D3PCLK1
#define RCC_CLOCKTYPE_D3PCLK1
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:319
IS_RCC_LSI
#define IS_RCC_LSI(LSI)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1369
GPIO_SPEED_FREQ_VERY_HIGH
#define GPIO_SPEED_FREQ_VERY_HIGH
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:145
HAL_RCC_OscConfig
HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
CLOCKSWITCH_TIMEOUT_VALUE
#define CLOCKSWITCH_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1341
RCC_OscInitTypeDef::PLL
RCC_PLLInitTypeDef PLL
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:71
RCC_HSICFGR_HSITRIM_Pos
#define RCC_HSICFGR_HSITRIM_Pos
Definition: stm32h735xx.h:14897
RCC_CR_HSION
#define RCC_CR_HSION
Definition: stm32f407xx.h:9428
RCC_PLLSOURCE_CSI
#define RCC_PLLSOURCE_CSI
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:266
RCC_ClkInitTypeDef::ClockType
uint32_t ClockType
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:79
GPIO_InitTypeDef::Speed
uint32_t Speed
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:58
RCC_PLLCKSELR_DIVM2_5
#define RCC_PLLCKSELR_DIVM2_5
Definition: stm32h735xx.h:15231
HAL_RCC_DisableCSS
void HAL_RCC_DisableCSS(void)
RCC_PLL1DIVR_R1_Pos
#define RCC_PLL1DIVR_R1_Pos
Definition: stm32h735xx.h:15328
RCC_CLOCKTYPE_PCLK2
#define RCC_CLOCKTYPE_PCLK2
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:193
RCC_OSCILLATORTYPE_LSE
#define RCC_OSCILLATORTYPE_LSE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:111
RCC_PLL1_DIVP
#define RCC_PLL1_DIVP
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:276
RCC_LSI_OFF
#define RCC_LSI_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:151
IS_RCC_SYSCLKSOURCE
#define IS_RCC_SYSCLKSOURCE(SOURCE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1376
IS_RCC_MCODIV
#define IS_RCC_MCODIV(DIV)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1437
PWR_CR1_DBP
#define PWR_CR1_DBP
Definition: stm32f769xx.h:10473
RCC_CFGR_SWS_HSE
#define RCC_CFGR_SWS_HSE
Definition: stm32f407xx.h:9551
RCC_LSE_BYPASS
#define RCC_LSE_BYPASS
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:132
READ_BIT
#define READ_BIT(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:216
RCC_PLL1DIVR_Q1_Pos
#define RCC_PLL1DIVR_Q1_Pos
Definition: stm32h735xx.h:15325
IS_RCC_HCLK
#define IS_RCC_HCLK(HCLK)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1420
RCC_PLLSOURCE_HSE
#define RCC_PLLSOURCE_HSE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:182
RCC_D1CFGR_D1CPRE
#define RCC_D1CFGR_D1CPRE
Definition: stm32h735xx.h:15096
RCC_CR_PLL1RDY
#define RCC_CR_PLL1RDY
Definition: stm32h735xx.h:14856
IS_RCC_PLLN_VALUE
#define IS_RCC_PLLN_VALUE(VALUE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:6877
HSI48_TIMEOUT_VALUE
#define HSI48_TIMEOUT_VALUE
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8014
RCC_CSR_LSION
#define RCC_CSR_LSION
Definition: stm32f407xx.h:10299
IS_RCC_PLLR_VALUE
#define IS_RCC_PLLR_VALUE(VALUE)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8094
RCC_CLOCKTYPE_SYSCLK
#define RCC_CLOCKTYPE_SYSCLK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:190
__HAL_RCC_CSI_CALIBRATIONVALUE_ADJUST
#define __HAL_RCC_CSI_CALIBRATIONVALUE_ADJUST(__CSICalibrationValue__)
Macro Adjusts the Internal oscillator (CSI) calibration value.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7266
RCC_LSE_TIMEOUT_VALUE
#define RCC_LSE_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1336
HAL_RCC_MCOConfig
void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv)
RCC_HSE_ON
#define RCC_HSE_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:121
HAL_RCC_GetHCLKFreq
uint32_t HAL_RCC_GetHCLKFreq(void)
RCC_PLL1DIVR_P1
#define RCC_PLL1DIVR_P1
Definition: stm32h735xx.h:15324
RCC_D3CFGR_D3PPRE
#define RCC_D3CFGR_D3PPRE
Definition: stm32h735xx.h:15177
RCC
#define RCC
Definition: stm32f407xx.h:1113
IS_RCC_PLLFRACN_VALUE
#define IS_RCC_PLLFRACN_VALUE(VALUE)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8084
RCC_MCO1
#define RCC_MCO1
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:296
RCC_CR_PLL2RDY
#define RCC_CR_PLL2RDY
Definition: stm32h735xx.h:14862
IS_RCC_HSE
#define IS_RCC_HSE(HSE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1361
RCC_CLOCKTYPE_HCLK
#define RCC_CLOCKTYPE_HCLK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:191
IS_RCC_HSI
#define IS_RCC_HSI(HSI)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1367
HAL_TIMEOUT
@ HAL_TIMEOUT
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:45
__HAL_RCC_PLL_ENABLE
#define __HAL_RCC_PLL_ENABLE()
Macros to enable or disable the main PLL.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1037
RCC_OscInitTypeDef::LSIState
uint32_t LSIState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:68
__HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST
#define __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(__HSICalibrationValue__)
Macro to adjust the Internal High Speed oscillator (HSI) calibration value.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:846
RCC_PLL_OFF
#define RCC_PLL_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:161
__HAL_RCC_HSI48_ENABLE
#define __HAL_RCC_HSI48_ENABLE()
Macro to enable or disable the Internal High Speed oscillator for USB (HSI48).
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7216
__HAL_RCC_LSI_ENABLE
#define __HAL_RCC_LSI_ENABLE()
Macros to enable or disable the Internal Low Speed oscillator (LSI).
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:864
IS_RCC_HSI48
#define IS_RCC_HSI48(HSI48)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8063
RCC_OscInitTypeDef::CSIState
uint32_t CSIState
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:110
RCC_OscInitTypeDef::CSICalibrationValue
uint32_t CSICalibrationValue
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:113
RCC_D2CFGR_D2PPRE1
#define RCC_D2CFGR_D2PPRE1
Definition: stm32h735xx.h:15132
HAL_RCC_GetPCLK1Freq
uint32_t HAL_RCC_GetPCLK1Freq(void)
RCC_CR_HSEBYP
#define RCC_CR_HSEBYP
Definition: stm32f407xx.h:9462
RCC_PLL1DIVR_N1_Pos
#define RCC_PLL1DIVR_N1_Pos
Definition: stm32h735xx.h:15319
RCC_PLL1DIVR_N1
#define RCC_PLL1DIVR_N1
Definition: stm32h735xx.h:15321
__HAL_RCC_GET_FLAG
#define __HAL_RCC_GET_FLAG(__FLAG__)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1230
RCC_PLLCKSELR_PLLSRC
#define RCC_PLLCKSELR_PLLSRC
Definition: stm32h735xx.h:15200
HAL_InitTick
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: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:253
RCC_BDCR_LSEON
#define RCC_BDCR_LSEON
Definition: stm32f407xx.h:10275
HAL_RCC_GetSysClockFreq
uint32_t HAL_RCC_GetSysClockFreq(void)
RCC_FLAG_HSI48RDY
#define RCC_FLAG_HSI48RDY
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:654
RCC_CFGR_SWS_HSI
#define RCC_CFGR_SWS_HSI
Definition: stm32f407xx.h:9550
IS_FLASH_LATENCY
#define IS_FLASH_LATENCY(LATENCY)
Definition: stm32f7xx_hal_flash_ex.h:589
IS_RCC_SYSCLK
#define IS_RCC_SYSCLK(SYSCLK)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8107
__HAL_RCC_LSI_DISABLE
#define __HAL_RCC_LSI_DISABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:865
RCC_CFGR_MCO1PRE
#define RCC_CFGR_MCO1PRE
Definition: stm32f407xx.h:9624
__HAL_RCC_PLLFRACN_DISABLE
#define __HAL_RCC_PLLFRACN_DISABLE()
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7549
HAL_RCC_CCSCallback
void HAL_RCC_CCSCallback(void)
FLASH
#define FLASH
Definition: stm32f407xx.h:1114
RCC_ClkInitTypeDef::APB4CLKDivider
uint32_t APB4CLKDivider
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:145
RCC_DBP_TIMEOUT_VALUE
#define RCC_DBP_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1335
RCC_PLLCKSELR_PLLSRC_HSE
#define RCC_PLLCKSELR_PLLSRC_HSE
Definition: stm32h735xx.h:15208
RCC_SYSCLKSOURCE_HSE
#define RCC_SYSCLKSOURCE_HSE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:204
RCC_CSI_OFF
#define RCC_CSI_OFF
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:242
RCC_LSE_ON
#define RCC_LSE_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:131
RCC_CR_PLL3RDY
#define RCC_CR_PLL3RDY
Definition: stm32h735xx.h:14868
HSE_VALUE
#define HSE_VALUE
Adjust the value of External High Speed oscillator (HSE) used in your application....
Definition: stm32f407/stm32f407g-disc1/Inc/stm32f4xx_hal_conf.h:69
RCC_CFGR_SWS_CSI
#define RCC_CFGR_SWS_CSI
Definition: stm32h735xx.h:14975
__HAL_RCC_GET_SYSCLK_SOURCE
#define __HAL_RCC_GET_SYSCLK_SOURCE()
Macro to get the clock source used as system clock.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1088
RCC_ClkInitTypeDef::SYSCLKSource
uint32_t SYSCLKSource
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:82
RCC_OSCILLATORTYPE_HSE
#define RCC_OSCILLATORTYPE_HSE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:109
RCC_OscInitTypeDef::HSEState
uint32_t HSEState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:56
WRITE_REG
#define WRITE_REG(REG, VAL)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:220
RCC_CLOCKTYPE_D1PCLK1
#define RCC_CLOCKTYPE_D1PCLK1
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:316
RCC_PLLCKSELR_DIVM3_5
#define RCC_PLLCKSELR_DIVM3_5
Definition: stm32h735xx.h:15241
RCC_D2CFGR_D2PPRE2
#define RCC_D2CFGR_D2PPRE2
Definition: stm32h735xx.h:15154
RCC_FLAG_LSIRDY
#define RCC_FLAG_LSIRDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:358
RCC_PLL1FRACR_FRACN1
#define RCC_PLL1FRACR_FRACN1
Definition: stm32h735xx.h:15335
RCC_OSCILLATORTYPE_CSI
#define RCC_OSCILLATORTYPE_CSI
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:167
SET_BIT
#define SET_BIT(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:212
RCC_LSI_ON
#define RCC_LSI_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:152
LSI_TIMEOUT_VALUE
#define LSI_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1340
IS_RCC_LSE
#define IS_RCC_LSE(LSE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1364
RCC_PLLInitTypeDef::PLLN
uint32_t PLLN
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:58
__HAL_RCC_CSI_ENABLE
#define __HAL_RCC_CSI_ENABLE()
Macros to enable or disable the Internal oscillator (CSI).
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7236
RCC_CR_CSIKERON
#define RCC_CR_CSIKERON
Definition: stm32h735xx.h:14822
IS_RCC_PLLM_VALUE
#define IS_RCC_PLLM_VALUE(VALUE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1414
RCC_PLLInitTypeDef::PLLVCOSEL
uint32_t PLLVCOSEL
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:75
RCC_OscInitTypeDef::OscillatorType
uint32_t OscillatorType
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:53
IS_RCC_HSICALIBRATION_VALUE
#define IS_RCC_HSICALIBRATION_VALUE(VALUE)
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8239
__HAL_RCC_HSI48_DISABLE
#define __HAL_RCC_HSI48_DISABLE()
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7218
__HAL_RCC_PLL_VCIRANGE
#define __HAL_RCC_PLL_VCIRANGE(__RCC_PLL1VCIRange__)
Macro to select the PLL1 reference frequency range.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7640
IS_RCC_PLL
#define IS_RCC_PLL(PLL)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1371
RCC_HSICFGR_HSITRIM_6
#define RCC_HSICFGR_HSITRIM_6
Definition: stm32h735xx.h:14906
RCC_HSI_ON
#define RCC_HSI_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:141
RCC_PLL1FRACR_FRACN1_Pos
#define RCC_PLL1FRACR_FRACN1_Pos
Definition: stm32h735xx.h:15333
__HAL_RCC_GET_HSI_DIVIDER
#define __HAL_RCC_GET_HSI_DIVIDER()
Macro to get the HSI divider.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7145
RCC_CR_CSION
#define RCC_CR_CSION
Definition: stm32h735xx.h:14816
RCC_ClkInitTypeDef::APB1CLKDivider
uint32_t APB1CLKDivider
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:88
IS_RCC_PLLP_VALUE
#define IS_RCC_PLLP_VALUE(VALUE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1416
__HAL_RCC_CSI_DISABLE
#define __HAL_RCC_CSI_DISABLE()
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7237
RCC_HSI_OFF
#define RCC_HSI_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:140
RCC_OSCILLATORTYPE_LSI
#define RCC_OSCILLATORTYPE_LSI
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:112
__HAL_RCC_PLLFRACN_CONFIG
#define __HAL_RCC_PLLFRACN_CONFIG(__RCC_PLL1FRACN__)
Macro to configures the main PLL clock Fractional Part Of The Multiplication Factor.
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:7628
__HAL_RCC_PLL_CONFIG
#define __HAL_RCC_PLL_CONFIG(__RCC_PLLSource__, __PLLM__, __PLLN__, __PLLP__, __PLLQ__)
Macro to configure the main PLL clock source, multiplication and division factors.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:5810
IS_RCC_D3PCLK1
#define IS_RCC_D3PCLK1
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8138
CSI_TIMEOUT_VALUE
#define CSI_TIMEOUT_VALUE
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:8015
RCC_HSI48_ON
#define RCC_HSI48_ON
Definition: stm32h735/stm32h735g-dk/Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_rcc.h:223
HAL_RCC_EnableCSS
void HAL_RCC_EnableCSS(void)
D1CorePrescTable
const uint8_t D1CorePrescTable[16]
Definition: stm32h735/stm32h735g-dk/Src/system_stm32h7xx.c:115
GPIO_InitTypeDef::Pin
uint32_t Pin
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:49


picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:14:54