Struct RTC

Source
pub struct RTC { /* private fields */ }
Expand description

Real-time clock

See peripheral structure

Implementations§

Source§

impl RTC

Source

pub const PTR: *const RegisterBlock = {0x40002800 as *const stm32g030::rtc::RegisterBlock}

Pointer to the register block

Source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

Source

pub unsafe fn steal() -> Self

Steal an instance of this peripheral

§Safety

Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.

Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.

Methods from Deref<Target = RegisterBlock>§

Source

pub fn tr(&self) -> &TR

0x00 - RTC time register

Source

pub fn dr(&self) -> &DR

0x04 - RTC date register

Source

pub fn ssr(&self) -> &SSR

0x08 - RTC sub second register

Source

pub fn icsr(&self) -> &ICSR

0x0c - RTC initialization control and status register

Source

pub fn prer(&self) -> &PRER

0x10 - RTC prescaler register

Source

pub fn wutr(&self) -> &WUTR

0x14 - RTC wakeup timer register

Source

pub fn cr(&self) -> &CR

0x18 - control register

Source

pub fn wpr(&self) -> &WPR

0x24 - write protection register

Source

pub fn calr(&self) -> &CALR

0x28 - RTC calibration register

Source

pub fn shiftr(&self) -> &SHIFTR

0x2c - RTC shift control register

Source

pub fn tstr(&self) -> &TSTR

0x30 - RTC timestamp time register

Source

pub fn tsdr(&self) -> &TSDR

0x34 - RTC timestamp date register

Source

pub fn tsssr(&self) -> &TSSSR

0x38 - RTC timestamp sub second register

Source

pub fn alrmr(&self, n: usize) -> &ALRMR

0x40..0x48 - Alarm %s register

`n` is the index of register in the array. `n == 0` corresponds to `ALRMAR` register.
Source

pub fn alrmr_iter(&self) -> impl Iterator<Item = &ALRMR>

Iterator for array of: 0x40..0x48 - Alarm %s register

Source

pub fn alrmar(&self) -> &ALRMR

0x40 - Alarm A register

Source

pub fn alrmbr(&self) -> &ALRMR

0x48 - Alarm B register

Source

pub fn alrmssr(&self, n: usize) -> &ALRMSSR

0x44..0x4c - Alarm %s sub-second register

`n` is the index of register in the array. `n == 0` corresponds to `ALRMASSR` register.
Source

pub fn alrmssr_iter(&self) -> impl Iterator<Item = &ALRMSSR>

Iterator for array of: 0x44..0x4c - Alarm %s sub-second register

Source

pub fn alrmassr(&self) -> &ALRMSSR

0x44 - Alarm A sub-second register

Source

pub fn alrmbssr(&self) -> &ALRMSSR

0x4c - Alarm B sub-second register

Source

pub fn sr(&self) -> &SR

0x50 - RTC status register

Source

pub fn misr(&self) -> &MISR

0x54 - RTC masked interrupt status register

Source

pub fn scr(&self) -> &SCR

0x5c - RTC status clear register

Trait Implementations§

Source§

impl Debug for RTC

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for RTC

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Send for RTC

Auto Trait Implementations§

§

impl Freeze for RTC

§

impl RefUnwindSafe 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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

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

Source§

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>,

Source§

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.