Struct PCNT

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

Pulse Count Controller

Implementations§

Source§

impl PCNT

Source

pub const PTR: *const RegisterBlock = {0x60012000 as *const pcnt::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 unit(&self, n: usize) -> &UNIT

0x00..0x30 - Cluster UNIT%s, containing U?_CONF0, U?_CONF1, U?_CONF2

Source

pub fn unit_iter(&self) -> impl Iterator<Item = &UNIT>

Iterator for array of: 0x00..0x30 - Cluster UNIT%s, containing U?_CONF0, U?_CONF1, U?_CONF2

Source

pub fn u_cnt(&self, n: usize) -> &U_CNT

0x30..0x40 - Counter value for unit %s

Source

pub fn u_cnt_iter(&self) -> impl Iterator<Item = &U_CNT>

Iterator for array of: 0x30..0x40 - Counter value for unit %s

Source

pub fn u0_cnt(&self) -> &U_CNT

0x30 - Counter value for unit 0

Source

pub fn u1_cnt(&self) -> &U_CNT

0x34 - Counter value for unit 1

Source

pub fn u2_cnt(&self) -> &U_CNT

0x38 - Counter value for unit 2

Source

pub fn u3_cnt(&self) -> &U_CNT

0x3c - Counter value for unit 3

Source

pub fn int_raw(&self) -> &INT_RAW

0x40 - Interrupt raw status register

Source

pub fn int_st(&self) -> &INT_ST

0x44 - Interrupt status register

Source

pub fn int_ena(&self) -> &INT_ENA

0x48 - Interrupt enable register

Source

pub fn int_clr(&self) -> &INT_CLR

0x4c - Interrupt clear register

Source

pub fn u_status(&self, n: usize) -> &U_STATUS

0x50..0x60 - PNCT UNIT%s status register

Source

pub fn u_status_iter(&self) -> impl Iterator<Item = &U_STATUS>

Iterator for array of: 0x50..0x60 - PNCT UNIT%s status register

Source

pub fn u0_status(&self) -> &U_STATUS

0x50 - PNCT UNIT0 status register

Source

pub fn u1_status(&self) -> &U_STATUS

0x54 - PNCT UNIT1 status register

Source

pub fn u2_status(&self) -> &U_STATUS

0x58 - PNCT UNIT2 status register

Source

pub fn u3_status(&self) -> &U_STATUS

0x5c - PNCT UNIT3 status register

Source

pub fn ctrl(&self) -> &CTRL

0x60 - Control register for all counters

Source

pub fn date(&self) -> &DATE

0xfc - PCNT version control register

Trait Implementations§

Source§

impl Debug for PCNT

Source§

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

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

impl Deref for PCNT

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for PCNT

Auto Trait Implementations§

§

impl Freeze for PCNT

§

impl RefUnwindSafe for PCNT

§

impl !Sync for PCNT

§

impl Unpin for PCNT

§

impl UnwindSafe for PCNT

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.