Struct stm32_hal2::clocks::Clocks [−][src]
pub struct Clocks {}Show fields
pub input_src: InputSrc, pub pllm: Pllm, pub plln: u8, pub pll_sai1_mul: u8, pub pll_sai2_mul: u8, pub pllr: Pllr, pub hclk_prescaler: HclkPrescaler, pub apb1_prescaler: ApbPrescaler, pub apb2_prescaler: ApbPrescaler, pub clk48_src: Clk48Src, pub sai1_enabled: bool, pub sai2_enabled: bool, pub hse_bypass: bool, pub security_system: bool, pub hsi48_on: bool, pub stop_wuck: StopWuck,
Settings used to configure clocks.
Fields
input_src: InputSrc
The input source for the system and peripheral clocks. Eg HSE, HSI, PLL etc
pllm: Pllm
plln: u8
pll_sai1_mul: u8
pll_sai2_mul: u8
pllr: Pllr
hclk_prescaler: HclkPrescaler
The value to divide SYSCLK by, to get systick and peripheral clocks. Also known as AHB divider
apb1_prescaler: ApbPrescaler
The divider of HCLK to get the APB1 peripheral clock
apb2_prescaler: ApbPrescaler
The divider of HCLK to get the APB2 peripheral clock
clk48_src: Clk48Src
The input source for the 48Mhz clock used by USB.
sai1_enabled: bool
sai2_enabled: bool
hse_bypass: bool
Bypass the HSE output, for use with oscillators that don’t need it. Saves power, and frees up the pin for use as GPIO.
security_system: bool
hsi48_on: bool
Enable the HSI48. For L4, this is only applicable on L49X and L4Ax devices.
stop_wuck: StopWuck
Select the input source to use after waking up from stop
mode. Eg HSI or MSI.
Implementations
impl Clocks
[src]
impl Clocks
[src]pub fn setup(&self, rcc: &mut RCC, flash: &mut FLASH) -> Result<(), SpeedError>
[src]
Setup common and return a Valid
status if the config is valid. Return
Invalid
, and don’t setup if not.
https://docs.rs/stm32f3xx-hal/0.5.0/stm32f3xx_hal/rcc/struct.CFGR.html
Use the STM32CubeIDE Clock Configuration tab to help.
pub fn change_msi_speed(&mut self, range: MsiRange, rcc: &mut RCC)
[src]
Use this to change the MSI speed. Run this only if your clock source is MSI. Ends in a state with MSI on at the new speed, and HSI off.
pub fn enable_msi_48(&self, rcc: &mut RCC)
[src]
Enables MSI, and configures it at 48Mhz. This is useful when using it as the USB clock,
ie with clk48_src: Clk48Src::Msi
. Don’t use this if using MSI for the input source or PLL source.
You may need to re-run this after exiting stop
mode.