Embassy
embassy-stm32

Crates

git

Versions

stm32l4r5vg

Flavors

Struct embassy_stm32::rtc::Rtc

source ·
pub struct Rtc { /* private fields */ }
Expand description

RTC driver.

Implementations§

source§

impl Rtc

source

pub fn calibrate(&mut self, clock_drift: f32, period: RtcCalibrationCyclePeriod)

Calibrate the clock drift.

clock_drift can be adjusted from -487.1 ppm to 488.5 ppm and is clamped to this range.

§Note

To perform a calibration when async_prescaler is less then 3, sync_prescaler has to be reduced accordingly (see RM0351 Rev 9, sec 38.3.12).

source§

impl Rtc

source

pub fn new(_rtc: impl Peripheral<P = RTC>, rtc_config: RtcConfig) -> Self

Create a new RTC instance.

source

pub const fn time_provider(&self) -> RtcTimeProvider

Acquire a RtcTimeProvider instance.

source

pub fn set_datetime(&mut self, t: DateTime) -> Result<(), RtcError>

Set the datetime to a new value.

§Errors

Will return RtcError::InvalidDateTime if the datetime is not a valid range.

source

pub fn now(&self) -> Result<DateTime, RtcError>

Return the current datetime.

§Errors

Will return an RtcError::InvalidDateTime if the stored value in the system is not a valid DayOfWeek.

source

pub fn get_daylight_savings(&self) -> bool

Check if daylight savings time is active.

source

pub fn set_daylight_savings(&mut self, daylight_savings: bool)

Enable/disable daylight savings time.

source

pub const BACKUP_REGISTER_COUNT: usize = 20usize

Number of backup registers of this instance.

source

pub fn read_backup_register(&self, register: usize) -> Option<u32>

Read content of the backup register.

The registers retain their values during wakes from standby mode or system resets. They also retain their value when Vdd is switched off as long as V_BAT is powered.

source

pub fn write_backup_register(&self, register: usize, value: u32)

Set content of the backup register.

The registers retain their values during wakes from standby mode or system resets. They also retain their value when Vdd is switched off as long as V_BAT is powered.

Auto Trait Implementations§

§

impl Freeze for Rtc

§

impl RefUnwindSafe for Rtc

§

impl Send for Rtc

§

impl Sync for Rtc

§

impl Unpin for Rtc

§

impl UnwindSafe for Rtc

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.