Modules | |
Internal and external clocks, PLL, CSS and MCO configuration functions | |
Internal and external clocks, PLL, CSS and MCO configuration functions. | |
System AHB and APB busses clocks configuration functions | |
System, AHB and APB busses clocks configuration functions. | |
Peripheral clocks configuration functions | |
Peripheral clocks configuration functions. | |
Interrupts and flags management functions | |
Interrupts and flags management functions. | |
Functions | |
void | RCC_DeInit (void) |
Resets the RCC clock configuration to the default reset state. | |
void | RCC_HSEConfig (uint32_t RCC_HSE) |
Configures the External High Speed oscillator (HSE). | |
ErrorStatus | RCC_WaitForHSEStartUp (void) |
Waits for HSE start-up. | |
void | RCC_AdjustHSICalibrationValue (uint8_t HSICalibrationValue) |
Adjusts the Internal High Speed oscillator (HSI) calibration value. | |
void | RCC_HSICmd (FunctionalState NewState) |
Enables or disables the Internal High Speed oscillator (HSI). | |
void | RCC_PLLConfig (uint32_t RCC_PLLSource, uint32_t RCC_PLLMul) |
Configures the PLL clock source and multiplication factor. | |
void | RCC_PLLCmd (FunctionalState NewState) |
Enables or disables the PLL. | |
void | RCC_SYSCLKConfig (uint32_t RCC_SYSCLKSource) |
Configures the system clock (SYSCLK). | |
uint8_t | RCC_GetSYSCLKSource (void) |
Returns the clock source used as system clock. | |
void | RCC_HCLKConfig (uint32_t RCC_SYSCLK) |
Configures the AHB clock (HCLK). | |
void | RCC_PCLK1Config (uint32_t RCC_HCLK) |
Configures the Low Speed APB clock (PCLK1). | |
void | RCC_PCLK2Config (uint32_t RCC_HCLK) |
Configures the High Speed APB clock (PCLK2). | |
void | RCC_ITConfig (uint8_t RCC_IT, FunctionalState NewState) |
Enables or disables the specified RCC interrupts. | |
void | RCC_USBCLKConfig (uint32_t RCC_USBCLKSource) |
Configures the USB clock (USBCLK). | |
void | RCC_ADCCLKConfig (uint32_t RCC_PCLK2) |
Configures the ADC clock (ADCCLK). | |
void | RCC_LSEConfig (uint8_t RCC_LSE) |
Configures the External Low Speed oscillator (LSE). | |
void | RCC_LSICmd (FunctionalState NewState) |
Enables or disables the Internal Low Speed oscillator (LSI). | |
void | RCC_RTCCLKConfig (uint32_t RCC_RTCCLKSource) |
Configures the RTC clock (RTCCLK). | |
void | RCC_RTCCLKCmd (FunctionalState NewState) |
Enables or disables the RTC clock. | |
void | RCC_GetClocksFreq (RCC_ClocksTypeDef *RCC_Clocks) |
Returns the frequencies of different on chip clocks. | |
void | RCC_AHBPeriphClockCmd (uint32_t RCC_AHBPeriph, FunctionalState NewState) |
Enables or disables the AHB peripheral clock. | |
void | RCC_APB2PeriphClockCmd (uint32_t RCC_APB2Periph, FunctionalState NewState) |
Enables or disables the High Speed APB (APB2) peripheral clock. | |
void | RCC_APB1PeriphClockCmd (uint32_t RCC_APB1Periph, FunctionalState NewState) |
Enables or disables the Low Speed APB (APB1) peripheral clock. | |
void | RCC_APB2PeriphResetCmd (uint32_t RCC_APB2Periph, FunctionalState NewState) |
Forces or releases High Speed APB (APB2) peripheral reset. | |
void | RCC_APB1PeriphResetCmd (uint32_t RCC_APB1Periph, FunctionalState NewState) |
Forces or releases Low Speed APB (APB1) peripheral reset. | |
void | RCC_BackupResetCmd (FunctionalState NewState) |
Forces or releases the Backup domain reset. | |
void | RCC_ClockSecuritySystemCmd (FunctionalState NewState) |
Enables or disables the Clock Security System. | |
void | RCC_MCOConfig (uint8_t RCC_MCO) |
Selects the clock source to output on MCO pin. | |
FlagStatus | RCC_GetFlagStatus (uint8_t RCC_FLAG) |
Checks whether the specified RCC flag is set or not. | |
void | RCC_ClearFlag (void) |
Clears the RCC reset flags. | |
ITStatus | RCC_GetITStatus (uint8_t RCC_IT) |
Checks whether the specified RCC interrupt has occurred or not. | |
void | RCC_ClearITPendingBit (uint8_t RCC_IT) |
Clears the RCC’s interrupt pending bits. |
void RCC_DeInit | ( | void | ) |
Resets the RCC clock configuration to the default reset state.
None |
None |
References RCC.
void RCC_HSEConfig | ( | uint32_t | RCC_HSE | ) |
Configures the External High Speed oscillator (HSE).
RCC_HSE,: | specifies the new state of the HSE. This parameter can be one of the following values:
|
None |
References assert_param, CR_HSEBYP_Reset, CR_HSEBYP_Set, CR_HSEON_Reset, CR_HSEON_Set, IS_RCC_HSE, RCC, RCC_HSE_Bypass, and RCC_HSE_ON.
ErrorStatus RCC_WaitForHSEStartUp | ( | void | ) |
Waits for HSE start-up.
None |
An | ErrorStatus enumuration value:
|
References __IO, ERROR, HSE_STARTUP_TIMEOUT, RCC_FLAG_HSERDY, RCC_GetFlagStatus(), RESET, and SUCCESS.
void RCC_AdjustHSICalibrationValue | ( | uint8_t | HSICalibrationValue | ) |
Adjusts the Internal High Speed oscillator (HSI) calibration value.
HSICalibrationValue,: | specifies the calibration trimming value. This parameter must be a number between 0 and 0x1F. |
None |
References assert_param, CR_HSITRIM_Mask, IS_RCC_CALIBRATION_VALUE, and RCC.
void RCC_HSICmd | ( | FunctionalState | NewState | ) |
Enables or disables the Internal High Speed oscillator (HSI).
NewState,: | new state of the HSI. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, CR_HSION_BB, and IS_FUNCTIONAL_STATE.
Configures the PLL clock source and multiplication factor.
RCC_PLLSource,: | specifies the PLL entry clock source. For STM32_Connectivity_line_devices or STM32_Value_line_devices, this parameter can be one of the following values:
|
RCC_PLLMul,: | specifies the PLL multiplication factor. For STM32_Connectivity_line_devices, this parameter can be RCC_PLLMul_x where x:{[4,9], 6_5} For other_STM32_devices, this parameter can be RCC_PLLMul_x where x:[2,16] |
None |
References assert_param, CFGR_PLL_Mask, IS_RCC_PLL_MUL, IS_RCC_PLL_SOURCE, and RCC.
void RCC_PLLCmd | ( | FunctionalState | NewState | ) |
Enables or disables the PLL.
NewState,: | new state of the PLL. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, CR_PLLON_BB, and IS_FUNCTIONAL_STATE.
void RCC_SYSCLKConfig | ( | uint32_t | RCC_SYSCLKSource | ) |
Configures the system clock (SYSCLK).
RCC_SYSCLKSource,: | specifies the clock source used as system clock. This parameter can be one of the following values:
|
None |
References assert_param, CFGR_SW_Mask, IS_RCC_SYSCLK_SOURCE, and RCC.
uint8_t RCC_GetSYSCLKSource | ( | void | ) |
Returns the clock source used as system clock.
None |
The | clock source used as system clock. The returned value can be one of the following:
|
References CFGR_SWS_Mask, and RCC.
void RCC_HCLKConfig | ( | uint32_t | RCC_SYSCLK | ) |
Configures the AHB clock (HCLK).
RCC_SYSCLK,: | defines the AHB clock divider. This clock is derived from the system clock (SYSCLK). This parameter can be one of the following values:
|
None |
References assert_param, CFGR_HPRE_Reset_Mask, IS_RCC_HCLK, and RCC.
void RCC_PCLK1Config | ( | uint32_t | RCC_HCLK | ) |
Configures the Low Speed APB clock (PCLK1).
RCC_HCLK,: | defines the APB1 clock divider. This clock is derived from the AHB clock (HCLK). This parameter can be one of the following values:
|
None |
References assert_param, CFGR_PPRE1_Reset_Mask, IS_RCC_PCLK, and RCC.
void RCC_PCLK2Config | ( | uint32_t | RCC_HCLK | ) |
Configures the High Speed APB clock (PCLK2).
RCC_HCLK,: | defines the APB2 clock divider. This clock is derived from the AHB clock (HCLK). This parameter can be one of the following values:
|
None |
References assert_param, CFGR_PPRE2_Reset_Mask, IS_RCC_PCLK, and RCC.
void RCC_ITConfig | ( | uint8_t | RCC_IT, |
FunctionalState | NewState | ||
) |
Enables or disables the specified RCC interrupts.
RCC_IT,: | specifies the RCC interrupt sources to be enabled or disabled. |
For STM32_Connectivity_line_devices, this parameter can be any combination of the following values
For other_STM32_devices, this parameter can be any combination of the following values
NewState,: | new state of the specified RCC interrupts. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, CIR_BYTE2_ADDRESS, DISABLE, IS_FUNCTIONAL_STATE, and IS_RCC_IT.
void RCC_USBCLKConfig | ( | uint32_t | RCC_USBCLKSource | ) |
Configures the USB clock (USBCLK).
RCC_USBCLKSource,: | specifies the USB clock source. This clock is derived from the PLL output. This parameter can be one of the following values:
|
None |
References __IO, assert_param, CFGR_USBPRE_BB, and IS_RCC_USBCLK_SOURCE.
void RCC_ADCCLKConfig | ( | uint32_t | RCC_PCLK2 | ) |
Configures the ADC clock (ADCCLK).
RCC_PCLK2,: | defines the ADC clock divider. This clock is derived from the APB2 clock (PCLK2). This parameter can be one of the following values:
|
None |
References assert_param, CFGR_ADCPRE_Reset_Mask, IS_RCC_ADCCLK, and RCC.
void RCC_LSEConfig | ( | uint8_t | RCC_LSE | ) |
Configures the External Low Speed oscillator (LSE).
RCC_LSE,: | specifies the new state of the LSE. This parameter can be one of the following values:
|
None |
References __IO, assert_param, BDCR_ADDRESS, IS_RCC_LSE, RCC_LSE_Bypass, RCC_LSE_OFF, and RCC_LSE_ON.
void RCC_LSICmd | ( | FunctionalState | NewState | ) |
Enables or disables the Internal Low Speed oscillator (LSI).
NewState,: | new state of the LSI. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, CSR_LSION_BB, and IS_FUNCTIONAL_STATE.
void RCC_RTCCLKConfig | ( | uint32_t | RCC_RTCCLKSource | ) |
Configures the RTC clock (RTCCLK).
RCC_RTCCLKSource,: | specifies the RTC clock source. This parameter can be one of the following values:
|
None |
References assert_param, IS_RCC_RTCCLK_SOURCE, and RCC.
void RCC_RTCCLKCmd | ( | FunctionalState | NewState | ) |
Enables or disables the RTC clock.
NewState,: | new state of the RTC clock. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, BDCR_RTCEN_BB, and IS_FUNCTIONAL_STATE.
void RCC_GetClocksFreq | ( | RCC_ClocksTypeDef * | RCC_Clocks | ) |
Returns the frequencies of different on chip clocks.
RCC_Clocks,: | pointer to a RCC_ClocksTypeDef structure which will hold the clocks frequencies. |
None |
References RCC_ClocksTypeDef::ADCCLK_Frequency, CFGR_ADCPRE_Set_Mask, CFGR_HPRE_Set_Mask, CFGR_PLLMull_Mask, CFGR_PLLSRC_Mask, CFGR_PLLXTPRE_Mask, CFGR_PPRE1_Set_Mask, CFGR_PPRE2_Set_Mask, CFGR_SWS_Mask, RCC_ClocksTypeDef::HCLK_Frequency, HSE_VALUE, HSI_VALUE, RCC_ClocksTypeDef::PCLK1_Frequency, RCC_ClocksTypeDef::PCLK2_Frequency, RCC, RESET, and RCC_ClocksTypeDef::SYSCLK_Frequency.
void RCC_AHBPeriphClockCmd | ( | uint32_t | RCC_AHBPeriph, |
FunctionalState | NewState | ||
) |
Enables or disables the AHB peripheral clock.
RCC_AHBPeriph,: | specifies the AHB peripheral to gates its clock. |
For STM32_Connectivity_line_devices, this parameter can be any combination of the following values:
For other_STM32_devices, this parameter can be any combination of the following values:
NewState,: | new state of the specified peripheral clock. This parameter can be: ENABLE or DISABLE. |
None |
References assert_param, DISABLE, IS_FUNCTIONAL_STATE, IS_RCC_AHB_PERIPH, and RCC.
void RCC_APB2PeriphClockCmd | ( | uint32_t | RCC_APB2Periph, |
FunctionalState | NewState | ||
) |
Enables or disables the High Speed APB (APB2) peripheral clock.
RCC_APB2Periph,: | specifies the APB2 peripheral to gates its clock. This parameter can be any combination of the following values:
|
NewState,: | new state of the specified peripheral clock. This parameter can be: ENABLE or DISABLE. |
None |
References assert_param, DISABLE, IS_FUNCTIONAL_STATE, IS_RCC_APB2_PERIPH, and RCC.
void RCC_APB1PeriphClockCmd | ( | uint32_t | RCC_APB1Periph, |
FunctionalState | NewState | ||
) |
Enables or disables the Low Speed APB (APB1) peripheral clock.
RCC_APB1Periph,: | specifies the APB1 peripheral to gates its clock. This parameter can be any combination of the following values:
|
NewState,: | new state of the specified peripheral clock. This parameter can be: ENABLE or DISABLE. |
None |
References assert_param, DISABLE, IS_FUNCTIONAL_STATE, IS_RCC_APB1_PERIPH, and RCC.
void RCC_APB2PeriphResetCmd | ( | uint32_t | RCC_APB2Periph, |
FunctionalState | NewState | ||
) |
Forces or releases High Speed APB (APB2) peripheral reset.
RCC_APB2Periph,: | specifies the APB2 peripheral to reset. This parameter can be any combination of the following values:
|
NewState,: | new state of the specified peripheral reset. This parameter can be: ENABLE or DISABLE. |
None |
References assert_param, DISABLE, IS_FUNCTIONAL_STATE, IS_RCC_APB2_PERIPH, and RCC.
void RCC_APB1PeriphResetCmd | ( | uint32_t | RCC_APB1Periph, |
FunctionalState | NewState | ||
) |
Forces or releases Low Speed APB (APB1) peripheral reset.
RCC_APB1Periph,: | specifies the APB1 peripheral to reset. This parameter can be any combination of the following values:
|
NewState,: | new state of the specified peripheral clock. This parameter can be: ENABLE or DISABLE. |
None |
References assert_param, DISABLE, IS_FUNCTIONAL_STATE, IS_RCC_APB1_PERIPH, and RCC.
void RCC_BackupResetCmd | ( | FunctionalState | NewState | ) |
Forces or releases the Backup domain reset.
NewState,: | new state of the Backup domain reset. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, BDCR_BDRST_BB, and IS_FUNCTIONAL_STATE.
void RCC_ClockSecuritySystemCmd | ( | FunctionalState | NewState | ) |
Enables or disables the Clock Security System.
NewState,: | new state of the Clock Security System.. This parameter can be: ENABLE or DISABLE. |
None |
References __IO, assert_param, CR_CSSON_BB, and IS_FUNCTIONAL_STATE.
void RCC_MCOConfig | ( | uint8_t | RCC_MCO | ) |
Selects the clock source to output on MCO pin.
RCC_MCO,: | specifies the clock source to output. |
For STM32_Connectivity_line_devices, this parameter can be one of the following values:
For other_STM32_devices, this parameter can be one of the following values:
None |
References __IO, assert_param, CFGR_BYTE4_ADDRESS, and IS_RCC_MCO.
FlagStatus RCC_GetFlagStatus | ( | uint8_t | RCC_FLAG | ) |
Checks whether the specified RCC flag is set or not.
RCC_FLAG,: | specifies the flag to check. |
For STM32_Connectivity_line_devices, this parameter can be one of the following values:
For other_STM32_devices, this parameter can be one of the following values:
The | new state of RCC_FLAG (SET or RESET). |
References assert_param, FLAG_Mask, IS_RCC_FLAG, RCC, RESET, and SET.
void RCC_ClearFlag | ( | void | ) |
Clears the RCC reset flags.
None |
None |
References CSR_RMVF_Set, and RCC.
Checks whether the specified RCC interrupt has occurred or not.
RCC_IT,: | specifies the RCC interrupt source to check. |
For STM32_Connectivity_line_devices, this parameter can be one of the following values:
For other_STM32_devices, this parameter can be one of the following values:
The | new state of RCC_IT (SET or RESET). |
References assert_param, IS_RCC_GET_IT, RCC, RESET, and SET.
void RCC_ClearITPendingBit | ( | uint8_t | RCC_IT | ) |
Clears the RCC’s interrupt pending bits.
RCC_IT,: | specifies the interrupt pending bit to clear. |
For STM32_Connectivity_line_devices, this parameter can be any combination of the following values:
For other_STM32_devices, this parameter can be any combination of the following values:
None |
References __IO, assert_param, CIR_BYTE3_ADDRESS, and IS_RCC_CLEAR_IT.