Struct stm32h7xx_hal::rcc::rec::Sai1
source · pub struct Sai1 { /* private fields */ }
Expand description
Reset, Enable and Clock functionality for Sai1
§Reset/Enable Example
let ccdr = ...; // From RCC
// Enable the clock to the peripheral and reset it
ccdr.peripheral.SAI1.enable().reset();
§Individual Kernel Clock
This peripheral has its own dedicated kernel clock. See Sai1ClkSel for possible clock sources.
let ccdr = ...; // From RCC
// Set individual kernel clock
let sai1_prec = ccdr.peripheral.SAI1.kernel_clk_mux(Sai1ClkSel::XX_clock_soruce_XX);
assert_eq!(sai1_prec.get_kernel_clk_mux(), Sai1ClkSel::XX_clock_source_XX);
Implementations§
source§impl Sai1
impl Sai1
sourcepub fn low_power(self, lpm: LowPowerMode) -> Self
pub fn low_power(self, lpm: LowPowerMode) -> Self
Set Low Power Mode for peripheral
source§impl Sai1
impl Sai1
sourcepub fn kernel_clk_mux(self, sel: Sai1ClkSel) -> Self
pub fn kernel_clk_mux(self, sel: Sai1ClkSel) -> Self
Modify the kernel clock for SAI1. See RM0433 Rev 7 Section 8.5.8.
It is possible to switch this clock dynamically without generating spurs or timing violations. However, the user must ensure that both clocks are running. See RM0433 Rev 7 Section 8.5.10.
sourcepub fn get_kernel_clk_mux(&self) -> Option<Sai1ClkSel>
pub fn get_kernel_clk_mux(&self) -> Option<Sai1ClkSel>
Return the current kernel clock selection
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Sai1
impl RefUnwindSafe for Sai1
impl !Sync for Sai1
impl Unpin for Sai1
impl UnwindSafe for Sai1
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more