Pm

Struct Pm 

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

Блок управления питанием и тактированием

Implementations§

Source§

impl Pm

Source

pub const PTR: *const RegisterBlock = {0x50000 as *const pm::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 div_ahb(&self) -> &DivAhb

0x00 - Задает значение делителя шины AHB. Частота шины AHB (FAHB) рассчитывается, как FSYS/( DIV_AHB+1)

Source

pub fn div_apb_m(&self) -> &DivApbM

0x04 - Задает значение делителя шины APB_M. Частота шины APB_M (FAPM_M) рассчитывается, как FAPB/( Div_APM_M+1)

Source

pub fn div_apb_p(&self) -> &DivApbP

0x08 - Задает значение делителя шины APB_P. Частота шины APB_P (FAPM_P) рассчитывается, как FAPB/( Div_APM_P+1)

Source

pub fn clk_ahb_set(&self) -> &ClkAhbSet

0x0c - Регистр включения тактированием устройств на шине AHB

Source

pub fn clk_ahb_clear(&self) -> &ClkAhbClear

0x10 - Регистр выключения тактированием устройств на шине AHB. Каждому биту соответствует устройство, аналогично CLK_AHB_SET

Source

pub fn clk_apb_m_set(&self) -> &ClkApbMSet

0x14 - Регистр включения тактированием устройств на шине APB_M. Каждому биту соответствует устройство

Source

pub fn clk_apb_m_clear(&self) -> &ClkApbMClear

0x18 - Регистр выключения тактированием устройств на шине APB_M. Каждому биту соответствует устройство, аналогично Clk_APB_M_Set

Source

pub fn clk_apb_p_set(&self) -> &ClkApbPSet

0x1c - Регистр включения тактированием устройств на шине APB_P. Каждому биту соответствует одно устройство

Source

pub fn clk_apb_p_clear(&self) -> &ClkApbPClear

0x20 - Регистр выключения тактированием устройств на шине APB_P. Каждому биту соответствует устройство, аналогично CLK_APB_P_SET

Source

pub fn ahb_mux(&self) -> &AhbMux

0x24 - Настройка источника тактирования системы

Source

pub fn wdt_clk_mux(&self) -> &WdtClkMux

0x28 - Выбор источника тактирования сторожевого таймера: 0 – внешний OSC32M; 1 – внутренний HSI32M; 2 – внешний OSC32K; 3 – внутренний LSI32К;

Source

pub fn cpu_rtc_clk_mux(&self) -> &CpuRtcClkMux

0x2c - Выбор источника тактирования RTC для системного таймера в составе ядра

Source

pub fn timer_cfg(&self) -> &TimerCfg

0x30 - Выбор источника тактирования для таймеров

Source

pub fn freq_mask(&self) -> &FreqMask

0x34 - Настройки прерываний монитора частоты

Source

pub fn freq_status(&self) -> &FreqStatus

0x38 - Статус монитора частоты

Source

pub fn sleep_mode(&self) -> &SleepMode

0x3c - Переход в спящий режим осуществляется записью в данный регистр. При записи отключается тактирование ядра. В зависимости от записываемого значения отключается тактирование модулей

Trait Implementations§

Source§

impl Debug for Pm

Source§

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

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

impl Deref for Pm

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for Pm

Auto Trait Implementations§

§

impl Freeze for Pm

§

impl RefUnwindSafe for Pm

§

impl !Sync for Pm

§

impl Unpin for Pm

§

impl UnwindSafe for Pm

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.