Struct stm32_metapac::rcc::regs::Bdcr
#[repr(transparent)]pub struct Bdcr(pub u32);
Expand description
RCC Backup domain control register.
Tuple Fields§
§0: u32
Implementations§
§impl Bdcr
impl Bdcr
pub const fn lserdy(&self) -> bool
pub const fn lserdy(&self) -> bool
LSE oscillator ready Set and reset by hardware to indicate when the LSE is stable. This bit needs 6 cycles of lse_ck clock to fall down after LSEON has been set to 0.
pub fn set_lserdy(&mut self, val: bool)
pub fn set_lserdy(&mut self, val: bool)
LSE oscillator ready Set and reset by hardware to indicate when the LSE is stable. This bit needs 6 cycles of lse_ck clock to fall down after LSEON has been set to 0.
pub const fn lsebyp(&self) -> bool
pub const fn lsebyp(&self) -> bool
LSE oscillator bypass Set and reset by software to bypass oscillator in debug mode. This bit must not be written when the LSE is enabled (by LSEON) or ready (LSERDY = 1).
pub fn set_lsebyp(&mut self, val: bool)
pub fn set_lsebyp(&mut self, val: bool)
LSE oscillator bypass Set and reset by software to bypass oscillator in debug mode. This bit must not be written when the LSE is enabled (by LSEON) or ready (LSERDY = 1).
pub const fn lsedrv(&self) -> Lsedrv
pub const fn lsedrv(&self) -> Lsedrv
LSE oscillator driving capability Set by software to select the driving capability of the LSE oscillator.
pub fn set_lsedrv(&mut self, val: Lsedrv)
pub fn set_lsedrv(&mut self, val: Lsedrv)
LSE oscillator driving capability Set by software to select the driving capability of the LSE oscillator.
pub const fn lsecsson(&self) -> bool
pub const fn lsecsson(&self) -> bool
LSE clock security system enable Set by software to enable the clock security system on 32 kHz oscillator. LSECSSON must be enabled after LSE is enabled (LSEON enabled) and ready (LSERDY set by hardware) and after RTCSEL is selected. Once enabled, this bit can only be disabled, After a LSE failure detection (LSECSSD = 1). In that case the software must disable LSECSSON. After a back-up domain reset.
pub fn set_lsecsson(&mut self, val: bool)
pub fn set_lsecsson(&mut self, val: bool)
LSE clock security system enable Set by software to enable the clock security system on 32 kHz oscillator. LSECSSON must be enabled after LSE is enabled (LSEON enabled) and ready (LSERDY set by hardware) and after RTCSEL is selected. Once enabled, this bit can only be disabled, After a LSE failure detection (LSECSSD = 1). In that case the software must disable LSECSSON. After a back-up domain reset.
pub const fn lsecssd(&self) -> bool
pub const fn lsecssd(&self) -> bool
LSE clock security system failure detection Set by hardware to indicate when a failure has been detected by the clock security system on the external 32 kHz oscillator.
pub fn set_lsecssd(&mut self, val: bool)
pub fn set_lsecssd(&mut self, val: bool)
LSE clock security system failure detection Set by hardware to indicate when a failure has been detected by the clock security system on the external 32 kHz oscillator.
pub const fn lseext(&self) -> bool
pub const fn lseext(&self) -> bool
low-speed external clock type in Bypass mode Set and reset by software to select the external clock type (analog or digital). The external clock must be enabled with the LSEON bit, to be used by the device. The LSEEXT bit can be written only if the LSE oscillator is disabled.
pub fn set_lseext(&mut self, val: bool)
pub fn set_lseext(&mut self, val: bool)
low-speed external clock type in Bypass mode Set and reset by software to select the external clock type (analog or digital). The external clock must be enabled with the LSEON bit, to be used by the device. The LSEEXT bit can be written only if the LSE oscillator is disabled.
pub const fn rtcsel(&self) -> Rtcsel
pub const fn rtcsel(&self) -> Rtcsel
RTC clock source selection Set by software to select the clock source for the RTC. These bits can be written only one time (except in case of failure detection on LSE). These bits must be written before LSECSSON is enabled. The VSWRST bit can be used to reset them, then it can be written one time again. If HSE is selected as RTC clock, this clock is lost when the system is in Stop mode or in case of a pin reset (NRST).
pub fn set_rtcsel(&mut self, val: Rtcsel)
pub fn set_rtcsel(&mut self, val: Rtcsel)
RTC clock source selection Set by software to select the clock source for the RTC. These bits can be written only one time (except in case of failure detection on LSE). These bits must be written before LSECSSON is enabled. The VSWRST bit can be used to reset them, then it can be written one time again. If HSE is selected as RTC clock, this clock is lost when the system is in Stop mode or in case of a pin reset (NRST).
pub const fn lsecssra(&self) -> bool
pub const fn lsecssra(&self) -> bool
Re-Arm the LSECSS function Set by software. After a LSE failure detection, the software application can re-enable the LSECSS by writing this bit to 1. Reading this bit returns the written value. Prior to set this bit to 1, LSECSSON must be set to 0. Please refer to Section : CSS on LSE for details.
pub fn set_lsecssra(&mut self, val: bool)
pub fn set_lsecssra(&mut self, val: bool)
Re-Arm the LSECSS function Set by software. After a LSE failure detection, the software application can re-enable the LSECSS by writing this bit to 1. Reading this bit returns the written value. Prior to set this bit to 1, LSECSSON must be set to 0. Please refer to Section : CSS on LSE for details.
pub const fn vswrst(&self) -> bool
pub const fn vswrst(&self) -> bool
VSwitch domain software reset Set and reset by software. To generate a VSW reset, it is recommended to write this bit to 1, then back to 0.
pub fn set_vswrst(&mut self, val: bool)
pub fn set_vswrst(&mut self, val: bool)
VSwitch domain software reset Set and reset by software. To generate a VSW reset, it is recommended to write this bit to 1, then back to 0.
Trait Implementations§
impl Copy for Bdcr
impl Eq for Bdcr
impl StructuralPartialEq for Bdcr
Auto Trait Implementations§
impl Freeze for Bdcr
impl RefUnwindSafe for Bdcr
impl Send for Bdcr
impl Sync for Bdcr
impl Unpin for Bdcr
impl UnwindSafe for Bdcr
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)