Clocks

Struct Clocks 

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

Frozen clock frequencies

The existence of this value indicates that the clock configuration can no longer be changed

To acquire it, use the freeze function on the rcc.cfgr register. If desired, you can adjust the frequencies using the methods on cfgr before calling freeze.

let dp = pac::Peripherals::take().unwrap();
let mut rcc = dp.RCC.constrain();
let mut flash = dp.FLASH.constrain();

let clocks = rcc.cfgr.freeze(&mut flash.acr);

Implementations§

Source§

impl Clocks

Source

pub const fn hclk(&self) -> Hertz

Returns the frequency of the AHB

Source

pub const fn pclk1(&self) -> Hertz

Returns the frequency of the APB1

Source

pub const fn pclk2(&self) -> Hertz

Returns the frequency of the APB2

Source

pub const fn pclk1_tim(&self) -> Hertz

Returns the frequency of the APB1 Timers

Source

pub const fn pclk2_tim(&self) -> Hertz

Returns the frequency of the APB2 Timers

Source

pub const fn sysclk(&self) -> Hertz

Returns the system (core) frequency

Source

pub const fn adcclk(&self) -> Hertz

Returns the adc clock frequency

Source

pub const fn usbclk_valid(&self) -> bool

Returns whether the USBCLK clock frequency is valid for the USB peripheral

Trait Implementations§

Source§

impl Clone for Clocks

Source§

fn clone(&self) -> Clocks

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Clocks

Source§

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

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

impl Default for Clocks

Source§

fn default() -> Clocks

Returns the “default value” for a type. Read more
Source§

impl PartialEq for Clocks

Source§

fn eq(&self, other: &Clocks) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Clocks

Source§

impl Eq for Clocks

Source§

impl StructuralPartialEq for Clocks

Auto Trait Implementations§

§

impl Freeze for Clocks

§

impl RefUnwindSafe for Clocks

§

impl Send for Clocks

§

impl Sync for Clocks

§

impl Unpin for Clocks

§

impl UnwindSafe for Clocks

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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, const R: u8> RFrom<T, R> for T

Source§

fn rfrom(value: T) -> T

Source§

impl<S, T, const R: u8> RInto<T, R> for S
where T: RFrom<S, R>,

Source§

fn rinto(self) -> T

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.