Struct fusb302b::registers::Status0

source ·
pub struct Status0(pub u8);

Tuple Fields§

§0: u8

Implementations§

source§

impl Status0

source

pub fn vbusok(&self) -> bool

Interrupt occurs when VBUS transitions through vVBUSthr. This bit typically is used to recognize port partner during startup

source

pub fn activity(&self) -> bool

Transitions are detected on the active CC* line. This bit goes high after a minimum of 3 CC transitions, and goes low with no Transitions

source

pub fn comp(&self) -> bool

Measured CC* input is higher than reference level driven from the MDAC

source

pub fn crc_chk(&self) -> bool

Indicates the last received packet had the correct CRC. This bit remains set until the SOP of the next packet

If false, packet received for an enabled SOP* and CRC for the enabled packet received was incorrect

source

pub fn alert(&self) -> bool

Alert software an error condition has occurred. An alert is caused by:

  • TX_FULL: the transmit FIFO is full
  • RX_FULL: the receive FIFO is full

See Status1 bits

source

pub fn wake(&self) -> bool

  • true: Voltage on CC indicated a device attempting to attach
  • false: WAKE either not enabled (WAKE_EN=0) or no device attached
source

pub fn bc_lvl(&self) -> u8

Current voltage status of the measured CC pin interpreted as host current levels as follows:

  • 00: < 200 mV
  • 01: > 200mV, < 660mV
  • 10: > 660mV, < 1.23V
  • 11: > 1.23 V

Note the software must measure these at an appropriate time, while there is no signaling activity on the selected CC line. BC_LVL is only defined when Measure block is on which is when register bits PWR[2]=1 and either MEAS_CC1=1 or MEAS_CC2=1

Trait Implementations§

source§

impl Clone for Status0

source§

fn clone(&self) -> Status0

Returns a copy 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 Default for Status0

source§

fn default() -> Status0

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

impl Format for Status0

source§

fn format(&self, f: Formatter<'_>)

Writes the defmt representation of self to fmt.
source§

impl From<Status0> for u8

source§

fn from(other: Status0) -> Self

Converts to this type from the input type.
source§

impl From<u8> for Status0

source§

fn from(other: u8) -> Self

Converts to this type from the input type.
source§

impl PartialEq for Status0

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for Status0

source§

impl Eq for Status0

source§

impl StructuralPartialEq for Status0

Auto Trait Implementations§

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<T> Same for T

§

type Output = T

Should always be Self
source§

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

§

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

§

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.
source§

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

source§

unsafe fn unsafe_from(other: U) -> T

Calls U::into(other).

That is, this conversion is whatever the implementation of Into<T> for U chooses to do.

source§

impl<T, U> UnsafeInto<U> for T
where U: UnsafeFrom<T>,

source§

unsafe fn unsafe_into(self) -> U

Calls U::unsafe_from(self).

That is, this conversion is whatever the implementation of UnsafeFrom<T> for U chooses to do.