Prusa MINI Firmware overview
RCC Extended MCOx Clock Config
Collaboration diagram for RCC Extended MCOx Clock Config:

Macros

#define __HAL_RCC_MCO1_CONFIG(__MCOCLKSOURCE__, __MCODIV__)   MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO1 | RCC_CFGR_MCO1PRE), ((__MCOCLKSOURCE__) | (__MCODIV__)))
 Macro to configure the MCO1 clock. More...
 
#define __HAL_RCC_MCO2_CONFIG(__MCOCLKSOURCE__, __MCODIV__)   MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO2 | RCC_CFGR_MCO2PRE), ((__MCOCLKSOURCE__) | ((__MCODIV__) << 3U)));
 Macro to configure the MCO2 clock. More...
 

Detailed Description

Macro Definition Documentation

◆ __HAL_RCC_MCO1_CONFIG

#define __HAL_RCC_MCO1_CONFIG (   __MCOCLKSOURCE__,
  __MCODIV__ 
)    MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO1 | RCC_CFGR_MCO1PRE), ((__MCOCLKSOURCE__) | (__MCODIV__)))

Macro to configure the MCO1 clock.

Parameters
<strong>MCOCLKSOURCE</strong>specifies the MCO clock source. This parameter can be one of the following values:
  • RCC_MCO1SOURCE_HSI: HSI clock selected as MCO1 source
  • RCC_MCO1SOURCE_LSE: LSE clock selected as MCO1 source
  • RCC_MCO1SOURCE_HSE: HSE clock selected as MCO1 source
  • RCC_MCO1SOURCE_PLLCLK: main PLL clock selected as MCO1 source
<strong>MCODIV</strong>specifies the MCO clock prescaler. This parameter can be one of the following values:
  • RCC_MCODIV_1: no division applied to MCOx clock
  • RCC_MCODIV_2: division by 2 applied to MCOx clock
  • RCC_MCODIV_3: division by 3 applied to MCOx clock
  • RCC_MCODIV_4: division by 4 applied to MCOx clock
  • RCC_MCODIV_5: division by 5 applied to MCOx clock

◆ __HAL_RCC_MCO2_CONFIG

#define __HAL_RCC_MCO2_CONFIG (   __MCOCLKSOURCE__,
  __MCODIV__ 
)    MODIFY_REG(RCC->CFGR, (RCC_CFGR_MCO2 | RCC_CFGR_MCO2PRE), ((__MCOCLKSOURCE__) | ((__MCODIV__) << 3U)));

Macro to configure the MCO2 clock.

Parameters
<strong>MCOCLKSOURCE</strong>specifies the MCO clock source. This parameter can be one of the following values:
  • RCC_MCO2SOURCE_SYSCLK: System clock (SYSCLK) selected as MCO2 source
  • RCC_MCO2SOURCE_PLLI2SCLK: PLLI2S clock selected as MCO2 source, available for all STM32F4 devices except STM32F410xx
  • RCC_MCO2SOURCE_I2SCLK: I2SCLK clock selected as MCO2 source, available only for STM32F410Rx devices
  • RCC_MCO2SOURCE_HSE: HSE clock selected as MCO2 source
  • RCC_MCO2SOURCE_PLLCLK: main PLL clock selected as MCO2 source
<strong>MCODIV</strong>specifies the MCO clock prescaler. This parameter can be one of the following values:
  • RCC_MCODIV_1: no division applied to MCOx clock
  • RCC_MCODIV_2: division by 2 applied to MCOx clock
  • RCC_MCODIV_3: division by 3 applied to MCOx clock
  • RCC_MCODIV_4: division by 4 applied to MCOx clock
  • RCC_MCODIV_5: division by 5 applied to MCOx clock
Note
For STM32F410Rx devices, to output I2SCLK clock on MCO2, you should have at least one of the SPI clocks enabled (SPI1, SPI2 or SPI5).