Struct UCPD1

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

USB Power Delivery interface

See peripheral structure

Implementations§

Source§

impl UCPD1

Source

pub const PTR: *const RegisterBlock = {0x4000a000 as *const stm32g081::ucpd1::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 cfgr1(&self) -> &CFGR1

0x00 - UCPD configuration register

Source

pub fn cfgr2(&self) -> &CFGR2

0x04 - UCPD configuration register 2

Source

pub fn cfgr3(&self) -> &CFGR3

0x08 - UCPD configuration register 3

Source

pub fn cr(&self) -> &CR

0x0c - UCPD control register

Source

pub fn imr(&self) -> &IMR

0x10 - UCPD Interrupt Mask Register

Source

pub fn sr(&self) -> &SR

0x14 - UCPD Status Register

Source

pub fn icr(&self) -> &ICR

0x18 - UCPD Interrupt Clear Register

Source

pub fn tx_ordsetr(&self) -> &TX_ORDSETR

0x1c - UCPD Tx Ordered Set Type Register

Source

pub fn tx_payszr(&self) -> &TX_PAYSZR

0x20 - UCPD Tx Paysize Register

Source

pub fn txdr(&self) -> &TXDR

0x24 - UCPD Tx Data Register

Source

pub fn rx_ordsetr(&self) -> &RX_ORDSETR

0x28 - UCPD Rx Ordered Set Register

Source

pub fn rx_payszr(&self) -> &RX_PAYSZR

0x2c - UCPD Rx Paysize Register

Source

pub fn rxdr(&self) -> &RXDR

0x30 - UCPD Receive Data Register

Source

pub fn rx_ordextr1(&self) -> &RX_ORDEXTR1

0x34 - UCPD Rx Ordered Set Extension Register

Source

pub fn rx_ordextr2(&self) -> &RX_ORDEXTR2

0x38 - UCPD Rx Ordered Set Extension Register

Source

pub fn ipver(&self) -> &IPVER

0x3f4 - UCPD IP ID register

Source

pub fn ipid(&self) -> &IPID

0x3f8 - UCPD IP ID register

Source

pub fn mid(&self) -> &MID

0x3fc - UCPD IP ID register

Trait Implementations§

Source§

impl Debug for UCPD1

Source§

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

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

impl Deref for UCPD1

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for UCPD1

Auto Trait Implementations§

§

impl Freeze for UCPD1

§

impl RefUnwindSafe for UCPD1

§

impl !Sync for UCPD1

§

impl Unpin for UCPD1

§

impl UnwindSafe for UCPD1

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.