stm32f7xx_hal_rcc.c
Go to the documentation of this file.
1 
68 /* Includes ------------------------------------------------------------------*/
69 #include "stm32f7xx_hal.h"
70 
80 #ifdef HAL_RCC_MODULE_ENABLED
81 
82 /* Private typedef -----------------------------------------------------------*/
83 /* Private define ------------------------------------------------------------*/
84 /* Private macro -------------------------------------------------------------*/
89 #define MCO1_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE()
90 #define MCO1_GPIO_PORT GPIOA
91 #define MCO1_PIN GPIO_PIN_8
92 
93 #define MCO2_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE()
94 #define MCO2_GPIO_PORT GPIOC
95 #define MCO2_PIN GPIO_PIN_9
96 
100 /* Private variables ---------------------------------------------------------*/
109 /* Private function prototypes -----------------------------------------------*/
110 /* Exported functions ---------------------------------------------------------*/
111 
199 {
200  uint32_t tickstart;
201 
202  /* Get Start Tick */
203  tickstart = HAL_GetTick();
204 
205  /* Set HSION bit to the reset value */
206  SET_BIT(RCC->CR, RCC_CR_HSION);
207 
208  /* Wait till HSI is ready */
209  while (READ_BIT(RCC->CR, RCC_CR_HSIRDY) == RESET)
210  {
211  if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE)
212  {
213  return HAL_TIMEOUT;
214  }
215  }
216 
217  /* Set HSITRIM[4:0] bits to the reset value */
219 
220  /* Get Start Tick */
221  tickstart = HAL_GetTick();
222 
223  /* Reset CFGR register */
224  CLEAR_REG(RCC->CFGR);
225 
226  /* Wait till clock switch is ready */
227  while (READ_BIT(RCC->CFGR, RCC_CFGR_SWS) != RESET)
228  {
229  if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE)
230  {
231  return HAL_TIMEOUT;
232  }
233  }
234 
235  /* Get Start Tick */
236  tickstart = HAL_GetTick();
237 
238  /* Clear HSEON, HSEBYP and CSSON bits */
240 
241  /* Wait till HSE is disabled */
242  while (READ_BIT(RCC->CR, RCC_CR_HSERDY) != RESET)
243  {
244  if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)
245  {
246  return HAL_TIMEOUT;
247  }
248  }
249 
250  /* Get Start Tick */
251  tickstart = HAL_GetTick();
252 
253  /* Clear PLLON bit */
254  CLEAR_BIT(RCC->CR, RCC_CR_PLLON);
255 
256  /* Wait till PLL is disabled */
257  while (READ_BIT(RCC->CR, RCC_CR_PLLRDY) != RESET)
258  {
259  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
260  {
261  return HAL_TIMEOUT;
262  }
263  }
264 
265  /* Get Start Tick */
266  tickstart = HAL_GetTick();
267 
268  /* Reset PLLI2SON bit */
270 
271  /* Wait till PLLI2S is disabled */
272  while (READ_BIT(RCC->CR, RCC_CR_PLLI2SRDY) != RESET)
273  {
274  if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE)
275  {
276  return HAL_TIMEOUT;
277  }
278  }
279 
280  /* Get Start Tick */
281  tickstart = HAL_GetTick();
282 
283  /* Reset PLLSAI bit */
285 
286  /* Wait till PLLSAI is disabled */
287  while (READ_BIT(RCC->CR, RCC_CR_PLLSAIRDY) != RESET)
288  {
289  if ((HAL_GetTick() - tickstart) > PLLSAI_TIMEOUT_VALUE)
290  {
291  return HAL_TIMEOUT;
292  }
293  }
294 
295  /* Once PLL, PLLI2S and PLLSAI are OFF, reset PLLCFGR register to default value */
297 
298  /* Reset PLLI2SCFGR register to default value */
300 
301  /* Reset PLLSAICFGR register to default value */
303 
304  /* Disable all interrupts */
306 
307  /* Clear all interrupt flags */
309 
310  /* Clear LSION bit */
311  CLEAR_BIT(RCC->CSR, RCC_CSR_LSION);
312 
313  /* Reset all CSR flags */
314  SET_BIT(RCC->CSR, RCC_CSR_RMVF);
315 
316  /* Update the SystemCoreClock global variable */
318 
319  /* Adapt Systick interrupt period */
321  {
322  return HAL_ERROR;
323  }
324  else
325  {
326  return HAL_OK;
327  }
328 }
329 
345 {
346  uint32_t tickstart;
347  uint32_t pll_config;
348  FlagStatus pwrclkchanged = RESET;
349 
350  /* Check Null pointer */
351  if (RCC_OscInitStruct == NULL)
352  {
353  return HAL_ERROR;
354  }
355 
356  /* Check the parameters */
358 
359  /*------------------------------- HSE Configuration ------------------------*/
360  if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE)
361  {
362  /* Check the parameters */
363  assert_param(IS_RCC_HSE(RCC_OscInitStruct->HSEState));
364  /* When the HSE is used as system clock or clock source for PLL, It can not be disabled */
367  {
368  if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF))
369  {
370  return HAL_ERROR;
371  }
372  }
373  else
374  {
375  /* Set the new HSE configuration ---------------------------------------*/
376  __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState);
377 
378  /* Check the HSE State */
379  if (RCC_OscInitStruct->HSEState != RCC_HSE_OFF)
380  {
381  /* Get Start Tick*/
382  tickstart = HAL_GetTick();
383 
384  /* Wait till HSE is ready */
386  {
387  if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)
388  {
389  return HAL_TIMEOUT;
390  }
391  }
392  }
393  else
394  {
395  /* Get Start Tick*/
396  tickstart = HAL_GetTick();
397 
398  /* Wait till HSE is bypassed or disabled */
400  {
401  if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE)
402  {
403  return HAL_TIMEOUT;
404  }
405  }
406  }
407  }
408  }
409  /*----------------------------- HSI Configuration --------------------------*/
410  if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI)
411  {
412  /* Check the parameters */
413  assert_param(IS_RCC_HSI(RCC_OscInitStruct->HSIState));
415 
416  /* Check if HSI is used as system clock or as PLL source when PLL is selected as system clock */
419  {
420  /* When HSI is used as system clock it will not disabled */
421  if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_ON))
422  {
423  return HAL_ERROR;
424  }
425  /* Otherwise, just the calibration is allowed */
426  else
427  {
428  /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/
430  }
431  }
432  else
433  {
434  /* Check the HSI State */
435  if ((RCC_OscInitStruct->HSIState) != RCC_HSI_OFF)
436  {
437  /* Enable the Internal High Speed oscillator (HSI). */
439 
440  /* Get Start Tick*/
441  tickstart = HAL_GetTick();
442 
443  /* Wait till HSI is ready */
445  {
446  if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE)
447  {
448  return HAL_TIMEOUT;
449  }
450  }
451 
452  /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/
454  }
455  else
456  {
457  /* Disable the Internal High Speed oscillator (HSI). */
459 
460  /* Get Start Tick*/
461  tickstart = HAL_GetTick();
462 
463  /* Wait till HSI is ready */
465  {
466  if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE)
467  {
468  return HAL_TIMEOUT;
469  }
470  }
471  }
472  }
473  }
474  /*------------------------------ LSI Configuration -------------------------*/
475  if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI)
476  {
477  /* Check the parameters */
478  assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState));
479 
480  /* Check the LSI State */
481  if ((RCC_OscInitStruct->LSIState) != RCC_LSI_OFF)
482  {
483  /* Enable the Internal Low Speed oscillator (LSI). */
485 
486  /* Get Start Tick*/
487  tickstart = HAL_GetTick();
488 
489  /* Wait till LSI is ready */
491  {
492  if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE)
493  {
494  return HAL_TIMEOUT;
495  }
496  }
497  }
498  else
499  {
500  /* Disable the Internal Low Speed oscillator (LSI). */
502 
503  /* Get Start Tick*/
504  tickstart = HAL_GetTick();
505 
506  /* Wait till LSI is ready */
508  {
509  if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE)
510  {
511  return HAL_TIMEOUT;
512  }
513  }
514  }
515  }
516  /*------------------------------ LSE Configuration -------------------------*/
517  if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE)
518  {
519  /* Check the parameters */
520  assert_param(IS_RCC_LSE(RCC_OscInitStruct->LSEState));
521 
522  /* Update LSE configuration in Backup Domain control register */
523  /* Requires to enable write access to Backup Domain of necessary */
525  {
526  /* Enable Power Clock*/
528  pwrclkchanged = SET;
529  }
530 
531  if (HAL_IS_BIT_CLR(PWR->CR1, PWR_CR1_DBP))
532  {
533  /* Enable write access to Backup domain */
534  PWR->CR1 |= PWR_CR1_DBP;
535 
536  /* Wait for Backup domain Write protection disable */
537  tickstart = HAL_GetTick();
538 
539  while (HAL_IS_BIT_CLR(PWR->CR1, PWR_CR1_DBP))
540  {
541  if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE)
542  {
543  return HAL_TIMEOUT;
544  }
545  }
546  }
547 
548  /* Set the new LSE configuration -----------------------------------------*/
549  __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState);
550  /* Check the LSE State */
551  if ((RCC_OscInitStruct->LSEState) != RCC_LSE_OFF)
552  {
553  /* Get Start Tick*/
554  tickstart = HAL_GetTick();
555 
556  /* Wait till LSE is ready */
558  {
559  if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE)
560  {
561  return HAL_TIMEOUT;
562  }
563  }
564  }
565  else
566  {
567  /* Get Start Tick*/
568  tickstart = HAL_GetTick();
569 
570  /* Wait till LSE is ready */
572  {
573  if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE)
574  {
575  return HAL_TIMEOUT;
576  }
577  }
578  }
579 
580  /* Restore clock configuration if changed */
581  if (pwrclkchanged == SET)
582  {
584  }
585  }
586  /*-------------------------------- PLL Configuration -----------------------*/
587  /* Check the parameters */
588  assert_param(IS_RCC_PLL(RCC_OscInitStruct->PLL.PLLState));
589  if ((RCC_OscInitStruct->PLL.PLLState) != RCC_PLL_NONE)
590  {
591  /* Check if the PLL is used as system clock or not */
593  {
594  if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON)
595  {
596  /* Check the parameters */
597  assert_param(IS_RCC_PLLSOURCE(RCC_OscInitStruct->PLL.PLLSource));
598  assert_param(IS_RCC_PLLM_VALUE(RCC_OscInitStruct->PLL.PLLM));
599  assert_param(IS_RCC_PLLN_VALUE(RCC_OscInitStruct->PLL.PLLN));
600  assert_param(IS_RCC_PLLP_VALUE(RCC_OscInitStruct->PLL.PLLP));
601  assert_param(IS_RCC_PLLQ_VALUE(RCC_OscInitStruct->PLL.PLLQ));
602 #if defined (RCC_PLLCFGR_PLLR)
603  assert_param(IS_RCC_PLLR_VALUE(RCC_OscInitStruct->PLL.PLLR));
604 #endif
605 
606  /* Disable the main PLL. */
608 
609  /* Get Start Tick*/
610  tickstart = HAL_GetTick();
611 
612  /* Wait till PLL is ready */
614  {
615  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
616  {
617  return HAL_TIMEOUT;
618  }
619  }
620 
621  /* Configure the main PLL clock source, multiplication and division factors. */
622 #if defined (RCC_PLLCFGR_PLLR)
623  __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource,
624  RCC_OscInitStruct->PLL.PLLM,
625  RCC_OscInitStruct->PLL.PLLN,
626  RCC_OscInitStruct->PLL.PLLP,
627  RCC_OscInitStruct->PLL.PLLQ,
628  RCC_OscInitStruct->PLL.PLLR);
629 #else
630  __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource,
631  RCC_OscInitStruct->PLL.PLLM,
632  RCC_OscInitStruct->PLL.PLLN,
633  RCC_OscInitStruct->PLL.PLLP,
634  RCC_OscInitStruct->PLL.PLLQ);
635 #endif
636 
637  /* Enable the main PLL. */
639 
640  /* Get Start Tick*/
641  tickstart = HAL_GetTick();
642 
643  /* Wait till PLL is ready */
645  {
646  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
647  {
648  return HAL_TIMEOUT;
649  }
650  }
651  }
652  else
653  {
654  /* Disable the main PLL. */
656 
657  /* Get Start Tick*/
658  tickstart = HAL_GetTick();
659 
660  /* Wait till PLL is ready */
662  {
663  if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE)
664  {
665  return HAL_TIMEOUT;
666  }
667  }
668  }
669  }
670  else
671  {
672  /* Do not return HAL_ERROR if request repeats the current configuration */
673  pll_config = RCC->PLLCFGR;
674 #if defined (RCC_PLLCFGR_PLLR)
675  if (((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) ||
676  (READ_BIT(pll_config, RCC_PLLCFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) ||
677  (READ_BIT(pll_config, RCC_PLLCFGR_PLLM) != RCC_OscInitStruct->PLL.PLLM) ||
678  (READ_BIT(pll_config, RCC_PLLCFGR_PLLN) != (RCC_OscInitStruct->PLL.PLLN << RCC_PLLCFGR_PLLN_Pos)) ||
679  (READ_BIT(pll_config, RCC_PLLCFGR_PLLP) != ((((RCC_OscInitStruct->PLL.PLLP) >> 1U) - 1U) << RCC_PLLCFGR_PLLP_Pos)) ||
680  (READ_BIT(pll_config, RCC_PLLCFGR_PLLQ) != (RCC_OscInitStruct->PLL.PLLQ << RCC_PLLCFGR_PLLQ_Pos)) ||
681  (READ_BIT(pll_config, RCC_PLLCFGR_PLLR) != (RCC_OscInitStruct->PLL.PLLR << RCC_PLLCFGR_PLLR_Pos)))
682 #else
683  if (((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) ||
684  (READ_BIT(pll_config, RCC_PLLCFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) ||
685  (READ_BIT(pll_config, RCC_PLLCFGR_PLLM) != RCC_OscInitStruct->PLL.PLLM) ||
686  (READ_BIT(pll_config, RCC_PLLCFGR_PLLN) != (RCC_OscInitStruct->PLL.PLLN << RCC_PLLCFGR_PLLN_Pos)) ||
687  (READ_BIT(pll_config, RCC_PLLCFGR_PLLP) != ((((RCC_OscInitStruct->PLL.PLLP) >> 1U) - 1U) << RCC_PLLCFGR_PLLP_Pos)) ||
688  (READ_BIT(pll_config, RCC_PLLCFGR_PLLQ) != (RCC_OscInitStruct->PLL.PLLQ << RCC_PLLCFGR_PLLQ_Pos)))
689 #endif
690  {
691  return HAL_ERROR;
692  }
693  }
694  }
695  return HAL_OK;
696 }
697 
724 HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
725 {
726  uint32_t tickstart = 0;
727 
728  /* Check Null pointer */
729  if (RCC_ClkInitStruct == NULL)
730  {
731  return HAL_ERROR;
732  }
733 
734  /* Check the parameters */
735  assert_param(IS_RCC_CLOCKTYPE(RCC_ClkInitStruct->ClockType));
736  assert_param(IS_FLASH_LATENCY(FLatency));
737 
738  /* To correctly read data from FLASH memory, the number of wait states (LATENCY)
739  must be correctly programmed according to the frequency of the CPU clock
740  (HCLK) and the supply voltage of the device. */
741 
742  /* Increasing the CPU frequency */
743  if (FLatency > __HAL_FLASH_GET_LATENCY())
744  {
745  /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
746  __HAL_FLASH_SET_LATENCY(FLatency);
747 
748  /* Check that the new number of wait states is taken into account to access the Flash
749  memory by reading the FLASH_ACR register */
750  if (__HAL_FLASH_GET_LATENCY() != FLatency)
751  {
752  return HAL_ERROR;
753  }
754  }
755 
756  /*-------------------------- HCLK Configuration --------------------------*/
757  if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK)
758  {
759  /* Set the highest APBx dividers in order to ensure that we do not go through
760  a non-spec phase whatever we decrease or increase HCLK. */
761  if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
762  {
764  }
765 
766  if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
767  {
769  }
770 
771  /* Set the new HCLK clock divider */
772  assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider));
773  MODIFY_REG(RCC->CFGR, RCC_CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider);
774  }
775 
776  /*------------------------- SYSCLK Configuration ---------------------------*/
777  if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK)
778  {
779  assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource));
780 
781  /* HSE is selected as System Clock Source */
782  if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE)
783  {
784  /* Check the HSE ready flag */
786  {
787  return HAL_ERROR;
788  }
789  }
790  /* PLL is selected as System Clock Source */
791  else if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK)
792  {
793  /* Check the PLL ready flag */
795  {
796  return HAL_ERROR;
797  }
798  }
799  /* HSI is selected as System Clock Source */
800  else
801  {
802  /* Check the HSI ready flag */
804  {
805  return HAL_ERROR;
806  }
807  }
808 
809  __HAL_RCC_SYSCLK_CONFIG(RCC_ClkInitStruct->SYSCLKSource);
810 
811  /* Get Start Tick*/
812  tickstart = HAL_GetTick();
813 
814  while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos))
815  {
816  if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE)
817  {
818  return HAL_TIMEOUT;
819  }
820  }
821  }
822 
823  /* Decreasing the number of wait states because of lower CPU frequency */
824  if (FLatency < __HAL_FLASH_GET_LATENCY())
825  {
826  /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
827  __HAL_FLASH_SET_LATENCY(FLatency);
828 
829  /* Check that the new number of wait states is taken into account to access the Flash
830  memory by reading the FLASH_ACR register */
831  if (__HAL_FLASH_GET_LATENCY() != FLatency)
832  {
833  return HAL_ERROR;
834  }
835  }
836 
837  /*-------------------------- PCLK1 Configuration ---------------------------*/
838  if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
839  {
840  assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB1CLKDivider));
841  MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_ClkInitStruct->APB1CLKDivider);
842  }
843 
844  /*-------------------------- PCLK2 Configuration ---------------------------*/
845  if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
846  {
847  assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB2CLKDivider));
848  MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, ((RCC_ClkInitStruct->APB2CLKDivider) << 3));
849  }
850 
851  /* Update the SystemCoreClock global variable */
853 
854  /* Configure the source of time base considering new system clocks settings*/
856 
857  return HAL_OK;
858 }
859 
905 void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv)
906 {
907  GPIO_InitTypeDef GPIO_InitStruct;
908  /* Check the parameters */
909  assert_param(IS_RCC_MCO(RCC_MCOx));
910  assert_param(IS_RCC_MCODIV(RCC_MCODiv));
911  /* RCC_MCO1 */
912  if (RCC_MCOx == RCC_MCO1)
913  {
914  assert_param(IS_RCC_MCO1SOURCE(RCC_MCOSource));
915 
916  /* MCO1 Clock Enable */
917  MCO1_CLK_ENABLE();
918 
919  /* Configure the MCO1 pin in alternate function mode */
920  GPIO_InitStruct.Pin = MCO1_PIN;
921  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
922  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
923  GPIO_InitStruct.Pull = GPIO_NOPULL;
924  GPIO_InitStruct.Alternate = GPIO_AF0_MCO;
925  HAL_GPIO_Init(MCO1_GPIO_PORT, &GPIO_InitStruct);
926 
927  /* Mask MCO1 and MCO1PRE[2:0] bits then Select MCO1 clock source and prescaler */
928  MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO1 | RCC_CFGR_MCO1PRE), (RCC_MCOSource | RCC_MCODiv));
929  }
930  else
931  {
932  assert_param(IS_RCC_MCO2SOURCE(RCC_MCOSource));
933 
934  /* MCO2 Clock Enable */
935  MCO2_CLK_ENABLE();
936 
937  /* Configure the MCO2 pin in alternate function mode */
938  GPIO_InitStruct.Pin = MCO2_PIN;
939  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
940  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
941  GPIO_InitStruct.Pull = GPIO_NOPULL;
942  GPIO_InitStruct.Alternate = GPIO_AF0_MCO;
943  HAL_GPIO_Init(MCO2_GPIO_PORT, &GPIO_InitStruct);
944 
945  /* Mask MCO2 and MCO2PRE[2:0] bits then Select MCO2 clock source and prescaler */
946  MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO2 | RCC_CFGR_MCO2PRE), (RCC_MCOSource | (RCC_MCODiv << 3)));
947  }
948 }
949 
959 void HAL_RCC_EnableCSS(void)
960 {
961  SET_BIT(RCC->CR, RCC_CR_CSSON);
962 }
963 
968 void HAL_RCC_DisableCSS(void)
969 {
970  CLEAR_BIT(RCC->CR, RCC_CR_CSSON);
971 }
972 
1003 uint32_t HAL_RCC_GetSysClockFreq(void)
1004 {
1005  uint32_t pllm = 0, pllvco = 0, pllp = 0;
1006  uint32_t sysclockfreq = 0;
1007 
1008  /* Get SYSCLK source -------------------------------------------------------*/
1009  switch (RCC->CFGR & RCC_CFGR_SWS)
1010  {
1011  case RCC_SYSCLKSOURCE_STATUS_HSI: /* HSI used as system clock source */
1012  {
1013  sysclockfreq = HSI_VALUE;
1014  break;
1015  }
1016  case RCC_SYSCLKSOURCE_STATUS_HSE: /* HSE used as system clock source */
1017  {
1018  sysclockfreq = HSE_VALUE;
1019  break;
1020  }
1021  case RCC_SYSCLKSOURCE_STATUS_PLLCLK: /* PLL used as system clock source */
1022  {
1023  /* PLL_VCO = (HSE_VALUE or HSI_VALUE / PLLM) * PLLN
1024  SYSCLK = PLL_VCO / PLLP */
1025  pllm = RCC->PLLCFGR & RCC_PLLCFGR_PLLM;
1027  {
1028  /* HSE used as PLL clock source */
1029  pllvco = (uint32_t)((((uint64_t) HSE_VALUE * ((uint64_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLLN) >> RCC_PLLCFGR_PLLN_Pos)))) / (uint64_t)pllm);
1030  }
1031  else
1032  {
1033  /* HSI used as PLL clock source */
1034  pllvco = (uint32_t)((((uint64_t) HSI_VALUE * ((uint64_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLLN) >> RCC_PLLCFGR_PLLN_Pos)))) / (uint64_t)pllm);
1035  }
1036  pllp = ((((RCC->PLLCFGR & RCC_PLLCFGR_PLLP) >> RCC_PLLCFGR_PLLP_Pos) + 1) * 2);
1037 
1038  sysclockfreq = pllvco / pllp;
1039  break;
1040  }
1041  default:
1042  {
1043  sysclockfreq = HSI_VALUE;
1044  break;
1045  }
1046  }
1047  return sysclockfreq;
1048 }
1049 
1057 uint32_t HAL_RCC_GetHCLKFreq(void)
1058 {
1059  return SystemCoreClock;
1060 }
1061 
1068 uint32_t HAL_RCC_GetPCLK1Freq(void)
1069 {
1070  /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/
1072 }
1073 
1080 uint32_t HAL_RCC_GetPCLK2Freq(void)
1081 {
1082  /* Get HCLK source and Compute PCLK2 frequency ---------------------------*/
1084 }
1085 
1093 void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
1094 {
1095  /* Set all possible values for the Oscillator type parameter ---------------*/
1097 
1098  /* Get the HSE configuration -----------------------------------------------*/
1099  if ((RCC->CR & RCC_CR_HSEBYP) == RCC_CR_HSEBYP)
1100  {
1101  RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS;
1102  }
1103  else if ((RCC->CR & RCC_CR_HSEON) == RCC_CR_HSEON)
1104  {
1105  RCC_OscInitStruct->HSEState = RCC_HSE_ON;
1106  }
1107  else
1108  {
1109  RCC_OscInitStruct->HSEState = RCC_HSE_OFF;
1110  }
1111 
1112  /* Get the HSI configuration -----------------------------------------------*/
1113  if ((RCC->CR & RCC_CR_HSION) == RCC_CR_HSION)
1114  {
1115  RCC_OscInitStruct->HSIState = RCC_HSI_ON;
1116  }
1117  else
1118  {
1119  RCC_OscInitStruct->HSIState = RCC_HSI_OFF;
1120  }
1121 
1122  RCC_OscInitStruct->HSICalibrationValue = (uint32_t)((RCC->CR & RCC_CR_HSITRIM) >> RCC_CR_HSITRIM_Pos);
1123 
1124  /* Get the LSE configuration -----------------------------------------------*/
1125  if ((RCC->BDCR & RCC_BDCR_LSEBYP) == RCC_BDCR_LSEBYP)
1126  {
1127  RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS;
1128  }
1129  else if ((RCC->BDCR & RCC_BDCR_LSEON) == RCC_BDCR_LSEON)
1130  {
1131  RCC_OscInitStruct->LSEState = RCC_LSE_ON;
1132  }
1133  else
1134  {
1135  RCC_OscInitStruct->LSEState = RCC_LSE_OFF;
1136  }
1137 
1138  /* Get the LSI configuration -----------------------------------------------*/
1139  if ((RCC->CSR & RCC_CSR_LSION) == RCC_CSR_LSION)
1140  {
1141  RCC_OscInitStruct->LSIState = RCC_LSI_ON;
1142  }
1143  else
1144  {
1145  RCC_OscInitStruct->LSIState = RCC_LSI_OFF;
1146  }
1147 
1148  /* Get the PLL configuration -----------------------------------------------*/
1149  if ((RCC->CR & RCC_CR_PLLON) == RCC_CR_PLLON)
1150  {
1151  RCC_OscInitStruct->PLL.PLLState = RCC_PLL_ON;
1152  }
1153  else
1154  {
1155  RCC_OscInitStruct->PLL.PLLState = RCC_PLL_OFF;
1156  }
1157  RCC_OscInitStruct->PLL.PLLSource = (uint32_t)(RCC->PLLCFGR & RCC_PLLCFGR_PLLSRC);
1158  RCC_OscInitStruct->PLL.PLLM = (uint32_t)(RCC->PLLCFGR & RCC_PLLCFGR_PLLM);
1159  RCC_OscInitStruct->PLL.PLLN = (uint32_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLLN) >> RCC_PLLCFGR_PLLN_Pos);
1160  RCC_OscInitStruct->PLL.PLLP = (uint32_t)((((RCC->PLLCFGR & RCC_PLLCFGR_PLLP) + RCC_PLLCFGR_PLLP_0) << 1) >> RCC_PLLCFGR_PLLP_Pos);
1161  RCC_OscInitStruct->PLL.PLLQ = (uint32_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLLQ) >> RCC_PLLCFGR_PLLQ_Pos);
1162 #if defined (RCC_PLLCFGR_PLLR)
1163  RCC_OscInitStruct->PLL.PLLR = (uint32_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLLR) >> POSITION_VAL(RCC_PLLCFGR_PLLR));
1164 #endif
1165 }
1166 
1175 void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency)
1176 {
1177  /* Set all possible values for the Clock type parameter --------------------*/
1179 
1180  /* Get the SYSCLK configuration --------------------------------------------*/
1181  RCC_ClkInitStruct->SYSCLKSource = (uint32_t)(RCC->CFGR & RCC_CFGR_SW);
1182 
1183  /* Get the HCLK configuration ----------------------------------------------*/
1184  RCC_ClkInitStruct->AHBCLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_HPRE);
1185 
1186  /* Get the APB1 configuration ----------------------------------------------*/
1187  RCC_ClkInitStruct->APB1CLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_PPRE1);
1188 
1189  /* Get the APB2 configuration ----------------------------------------------*/
1190  RCC_ClkInitStruct->APB2CLKDivider = (uint32_t)((RCC->CFGR & RCC_CFGR_PPRE2) >> 3);
1191 
1192  /* Get the Flash Wait State (Latency) configuration ------------------------*/
1193  *pFLatency = (uint32_t)(FLASH->ACR & FLASH_ACR_LATENCY);
1194 }
1195 
1201 void HAL_RCC_NMI_IRQHandler(void)
1202 {
1203  /* Check RCC CSSF flag */
1205  {
1206  /* RCC Clock Security System interrupt user callback */
1208 
1209  /* Clear RCC CSS pending bit */
1211  }
1212 }
1213 
1218 __weak void HAL_RCC_CSSCallback(void)
1219 {
1220  /* NOTE : This function Should not be modified, when the callback is needed,
1221  the HAL_RCC_CSSCallback could be implemented in the user file
1222  */
1223 }
1224 
1233 #endif /* HAL_RCC_MODULE_ENABLED */
1234 
1242 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
RCC_PLLI2SCFGR_PLLI2SR_1
#define RCC_PLLI2SCFGR_PLLI2SR_1
Definition: stm32f407xx.h:10363
assert_param
#define assert_param(expr)
Include module's header file.
Definition: stm32f407/stm32f407g-disc1/Inc/stm32f4xx_hal_conf.h:353
RCC_SYSCLKSOURCE_STATUS_PLLCLK
#define RCC_SYSCLKSOURCE_STATUS_PLLCLK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:218
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
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_PLLCFGR_PLLP_Pos
#define RCC_PLLCFGR_PLLP_Pos
Definition: stm32f407xx.h:9508
RCC_CFGR_PPRE1_Pos
#define RCC_CFGR_PPRE1_Pos
Definition: stm32f407xx.h:9574
RCC_CIR_HSIRDYC
#define RCC_CIR_HSIRDYC
Definition: stm32f407xx.h:9692
HAL_IS_BIT_CLR
#define HAL_IS_BIT_CLR(REG, BIT)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:64
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
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
RCC_HCLK_DIV16
#define RCC_HCLK_DIV16
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:247
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
RCC_PLLCFGR_PLLR_Pos
#define RCC_PLLCFGR_PLLR_Pos
Definition: stm32f469xx.h:13591
HAL_RCC_CSSCallback
void HAL_RCC_CSSCallback(void)
__HAL_RCC_PWR_CLK_DISABLE
#define __HAL_RCC_PWR_CLK_DISABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:526
RCC_PLLSAICFGR_PLLSAIN_7
#define RCC_PLLSAICFGR_PLLSAIN_7
Definition: stm32f469xx.h:14574
RCC_FLAG_HSERDY
#define RCC_FLAG_HSERDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:350
RCC_CFGR_PPRE2
#define RCC_CFGR_PPRE2
Definition: stm32f407xx.h:9590
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
RCC_CIR_PLLSAIRDYIE
#define RCC_CIR_PLLSAIRDYIE
Definition: stm32f469xx.h:13756
HSE_TIMEOUT_VALUE
#define HSE_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1338
RCC_CIR_PLLI2SRDYC
#define RCC_CIR_PLLI2SRDYC
Definition: stm32f407xx.h:9701
__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_SYSCLKSOURCE_STATUS_HSI
#define RCC_SYSCLKSOURCE_STATUS_HSI
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:216
__HAL_RCC_HSI_DISABLE
#define __HAL_RCC_HSI_DISABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:837
RCC_PLLCFGR_PLLM_4
#define RCC_PLLCFGR_PLLM_4
Definition: stm32f407xx.h:9492
GPIO_InitTypeDef::Alternate
uint32_t Alternate
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:61
PLL_TIMEOUT_VALUE
#define PLL_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:6854
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_PLLCFGR_PLLSRC_HSI
#define RCC_PLLCFGR_PLLSRC_HSI
Definition: stm32f407xx.h:9520
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
RCC_CIR_PLLRDYIE
#define RCC_CIR_PLLRDYIE
Definition: stm32f407xx.h:9679
IS_RCC_MCO2SOURCE
#define IS_RCC_MCO2SOURCE(SOURCE)
Definition: stm32f7xx_hal_rcc.h:1258
RCC_PLLCFGR_PLLN_7
#define RCC_PLLCFGR_PLLN_7
Definition: stm32f407xx.h:9505
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
RCC_CIR_LSIRDYIE
#define RCC_CIR_LSIRDYIE
Definition: stm32f407xx.h:9667
HAL_ERROR
@ HAL_ERROR
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h:43
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_CFGR_MCO2PRE
#define RCC_CFGR_MCO2PRE
Definition: stm32f407xx.h:9631
POSITION_VAL
#define POSITION_VAL(VAL)
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:226
RCC_SYSCLKSOURCE_STATUS_HSE
#define RCC_SYSCLKSOURCE_STATUS_HSE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:217
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
__HAL_RCC_GET_PLL_OSCSOURCE
#define __HAL_RCC_GET_PLL_OSCSOURCE()
Macro to get the oscillator used as PLL clock source.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1096
RCC_PLLCFGR_PLLSRC_HSE
#define RCC_PLLCFGR_PLLSRC_HSE
Definition: stm32f407xx.h:9519
uwTickPrio
uint32_t uwTickPrio
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c:95
RCC_CR_HSERDY
#define RCC_CR_HSERDY
Definition: stm32f407xx.h:9459
RCC_PLLSAICFGR_PLLSAIN_6
#define RCC_PLLSAICFGR_PLLSAIN_6
Definition: stm32f469xx.h:14573
HAL_RCC_NMI_IRQHandler
void HAL_RCC_NMI_IRQHandler(void)
RCC_CFGR_HPRE
#define RCC_CFGR_HPRE
Definition: stm32f407xx.h:9557
__HAL_RCC_PLL_DISABLE
#define __HAL_RCC_PLL_DISABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1038
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
RCC_PLLCFGR_PLLSRC
#define RCC_PLLCFGR_PLLSRC
Definition: stm32f407xx.h:9516
HAL_RCC_DeInit
HAL_StatusTypeDef HAL_RCC_DeInit(void)
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
RCC_CIR_PLLRDYC
#define RCC_CIR_PLLRDYC
Definition: stm32f407xx.h:9698
RCC_HSE_OFF
#define RCC_HSE_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:120
RCC_PLLCFGR_PLLP_0
#define RCC_PLLCFGR_PLLP_0
Definition: stm32f407xx.h:9511
RCC_CR_PLLSAIRDY
#define RCC_CR_PLLSAIRDY
Definition: stm32f469xx.h:13543
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
IS_RCC_CALIBRATION_VALUE
#define IS_RCC_CALIBRATION_VALUE(VALUE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1440
RCC_PLL_NONE
#define RCC_PLL_NONE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:160
RCC_CLOCKTYPE_PCLK1
#define RCC_CLOCKTYPE_PCLK1
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:192
RCC_CIR_CSSC
#define RCC_CIR_CSSC
Definition: stm32f407xx.h:9705
RCC_OscInitTypeDef::HSIState
uint32_t HSIState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:62
RCC_PLLCFGR_PLLM
#define RCC_PLLCFGR_PLLM
Definition: stm32f407xx.h:9487
GPIO_InitTypeDef::Mode
uint32_t Mode
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h:52
RCC_PLLCFGR_PLLQ
#define RCC_PLLCFGR_PLLQ
Definition: stm32f407xx.h:9524
RCC_CFGR_PPRE1
#define RCC_CFGR_PPRE1
Definition: stm32f407xx.h:9576
RCC_CFGR_SWS
#define RCC_CFGR_SWS
Definition: stm32f407xx.h:9546
RCC_CR_CSSON
#define RCC_CR_CSSON
Definition: stm32f407xx.h:9465
__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
FLASH_ACR_LATENCY
#define FLASH_ACR_LATENCY
Definition: stm32f407xx.h:6678
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
RCC_CIR_LSERDYIE
#define RCC_CIR_LSERDYIE
Definition: stm32f407xx.h:9670
__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
RCC_CR_PLLI2SRDY
#define RCC_CR_PLLI2SRDY
Definition: stm32f407xx.h:9482
RCC_PLLI2SCFGR_PLLI2SQ_2
#define RCC_PLLI2SCFGR_PLLI2SQ_2
Definition: stm32f469xx.h:14554
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_CR_PLLRDY
#define RCC_CR_PLLRDY
Definition: stm32f407xx.h:9471
RCC_HSE_BYPASS
#define RCC_HSE_BYPASS
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:122
RCC_PLLInitTypeDef::PLLSource
uint32_t PLLSource
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h:52
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_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
IS_RCC_LSI
#define IS_RCC_LSI(LSI)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1369
HAL_RCC_OscConfig
HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
RCC_CFGR_HPRE_Pos
#define RCC_CFGR_HPRE_Pos
Definition: stm32f407xx.h:9555
CLOCKSWITCH_TIMEOUT_VALUE
#define CLOCKSWITCH_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1341
RESET
@ RESET
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:187
RCC_OscInitTypeDef::PLL
RCC_PLLInitTypeDef PLL
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:71
RCC_CR_HSION
#define RCC_CR_HSION
Definition: stm32f407xx.h:9428
__HAL_RCC_HSI_ENABLE
#define __HAL_RCC_HSI_ENABLE()
Macros to enable or disable the Internal High Speed oscillator (HSI).
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:836
RCC_CFGR_PPRE2_Pos
#define RCC_CFGR_PPRE2_Pos
Definition: stm32f407xx.h:9588
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
HAL_RCC_DisableCSS
void HAL_RCC_DisableCSS(void)
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_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_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
IS_RCC_HCLK
#define IS_RCC_HCLK(HCLK)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1420
__HAL_RCC_SYSCLK_CONFIG
#define __HAL_RCC_SYSCLK_CONFIG(__RCC_SYSCLKSOURCE__)
Macro to configure the system clock source.
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1077
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
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
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_PLLCFGR_PLLQ_Pos
#define RCC_PLLCFGR_PLLQ_Pos
Definition: stm32f407xx.h:9522
RCC
#define RCC
Definition: stm32f407xx.h:1113
__HAL_RCC_PWR_CLK_ENABLE
#define __HAL_RCC_PWR_CLK_ENABLE()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:512
RCC_MCO1
#define RCC_MCO1
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:296
RCC_CR_HSITRIM_4
#define RCC_CR_HSITRIM_4
Definition: stm32f407xx.h:9440
AHBPrescTable
const uint8_t AHBPrescTable[16]
Definition: stm32f407/stm32f407g-disc1/Src/system_stm32f4xx.c:123
IS_RCC_HSE
#define IS_RCC_HSE(HSE)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1361
RCC_PLLSAICFGR_PLLSAIQ_2
#define RCC_PLLSAICFGR_PLLSAIQ_2
Definition: stm32f469xx.h:14588
RCC_CLOCKTYPE_HCLK
#define RCC_CLOCKTYPE_HCLK
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:191
RCC_CR_PLLI2SON
#define RCC_CR_PLLI2SON
Definition: stm32f407xx.h:9479
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_CR_HSITRIM
#define RCC_CR_HSITRIM
Definition: stm32f407xx.h:9435
RCC_OscInitTypeDef::LSIState
uint32_t LSIState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:68
RCC_PLLCFGR_PLLN_6
#define RCC_PLLCFGR_PLLN_6
Definition: stm32f407xx.h:9504
__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_CIR_HSERDYIE
#define RCC_CIR_HSERDYIE
Definition: stm32f407xx.h:9676
APBPrescTable
const uint8_t APBPrescTable[8]
Definition: stm32f407/stm32f407g-disc1/Src/system_stm32f4xx.c:124
RCC_PLL_OFF
#define RCC_PLL_OFF
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:161
RCC_CIR_HSERDYC
#define RCC_CIR_HSERDYC
Definition: stm32f407xx.h:9695
RCC_CIR_LSERDYC
#define RCC_CIR_LSERDYC
Definition: stm32f407xx.h:9689
__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
RCC_PLLCFGR_PLLQ_2
#define RCC_PLLCFGR_PLLQ_2
Definition: stm32f407xx.h:9527
RCC_PLLCFGR_PLLN
#define RCC_PLLCFGR_PLLN
Definition: stm32f407xx.h:9497
HAL_RCC_GetPCLK1Freq
uint32_t HAL_RCC_GetPCLK1Freq(void)
RCC_CR_HSEBYP
#define RCC_CR_HSEBYP
Definition: stm32f407xx.h:9462
SET
@ SET
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:188
RCC_PLLCFGR_PLLN_Pos
#define RCC_PLLCFGR_PLLN_Pos
Definition: stm32f407xx.h:9495
__HAL_RCC_GET_FLAG
#define __HAL_RCC_GET_FLAG(__FLAG__)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1230
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_PLLCFGR_PLLR
#define RCC_PLLCFGR_PLLR
Definition: stm32f469xx.h:13593
FlagStatus
FlagStatus
Definition: stm32f407/stm32f407g-disc1/Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h:185
IS_FLASH_LATENCY
#define IS_FLASH_LATENCY(LATENCY)
Definition: stm32f7xx_hal_flash_ex.h:589
__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
FLASH
#define FLASH
Definition: stm32f407xx.h:1114
RCC_DBP_TIMEOUT_VALUE
#define RCC_DBP_TIMEOUT_VALUE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1335
RCC_CIR_PLLSAIRDYC
#define RCC_CIR_PLLSAIRDYC
Definition: stm32f469xx.h:13777
RCC_SYSCLKSOURCE_HSE
#define RCC_SYSCLKSOURCE_HSE
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:204
RCC_LSE_ON
#define RCC_LSE_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:131
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
__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
PLLI2S_TIMEOUT_VALUE
#define PLLI2S_TIMEOUT_VALUE
Definition: stm32f7xx_hal_rcc.h:1182
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_CIR_LSIRDYC
#define RCC_CIR_LSIRDYC
Definition: stm32f407xx.h:9686
RCC_OscInitTypeDef::HSEState
uint32_t HSEState
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:56
RCC_CR_PLLSAION
#define RCC_CR_PLLSAION
Definition: stm32f469xx.h:13540
RCC_FLAG_LSIRDY
#define RCC_FLAG_LSIRDY
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:358
RCC_CIR_HSIRDYIE
#define RCC_CIR_HSIRDYIE
Definition: stm32f407xx.h:9673
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
RCC_PLLI2SCFGR_PLLI2SN_6
#define RCC_PLLI2SCFGR_PLLI2SN_6
Definition: stm32f407xx.h:10355
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_OscInitTypeDef::OscillatorType
uint32_t OscillatorType
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:53
RCC_CIR_PLLI2SRDYIE
#define RCC_CIR_PLLI2SRDYIE
Definition: stm32f407xx.h:9682
RCC_CSR_RMVF
#define RCC_CSR_RMVF
Definition: stm32f407xx.h:10305
RCC_PLLCFGR_PLLP
#define RCC_PLLCFGR_PLLP
Definition: stm32f407xx.h:9510
IS_RCC_PLL
#define IS_RCC_PLL(PLL)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1371
RCC_HSI_ON
#define RCC_HSI_ON
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:141
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
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_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
PLLSAI_TIMEOUT_VALUE
#define PLLSAI_TIMEOUT_VALUE
Definition: stm32f7xx_hal_rcc.h:1183
HAL_RCC_EnableCSS
void HAL_RCC_EnableCSS(void)
IS_RCC_PCLK
#define IS_RCC_PCLK(PCLK)
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:1428
stm32f7xx_hal.h
This file contains all the functions prototypes for the HAL module driver.
RCC_CR_HSITRIM_Pos
#define RCC_CR_HSITRIM_Pos
Definition: stm32f407xx.h:9433
RCC_PLLI2SCFGR_PLLI2SN_7
#define RCC_PLLI2SCFGR_PLLI2SN_7
Definition: stm32f407xx.h:10356
__HAL_RCC_PWR_IS_CLK_DISABLED
#define __HAL_RCC_PWR_IS_CLK_DISABLED()
Definition: stm32f407/stm32f407g-disc1/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h:552
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:53