Embassy
embassy-usb

Crates

git

Versions

default

Flavors

Struct embassy_usb::class::cdc_acm::Receiver

source ·
pub struct Receiver<'d, D: Driver<'d>> { /* private fields */ }
Expand description

CDC ACM class packet receiver.

You can obtain a Receiver with CdcAcmClass::split

Implementations§

source§

impl<'d, D: Driver<'d>> Receiver<'d, D>

source

pub fn max_packet_size(&self) -> u16

Gets the maximum packet size in bytes.

source

pub fn line_coding(&self) -> LineCoding

Gets the current line coding. The line coding contains information that’s mainly relevant for USB to UART serial port emulators, and can be ignored if not relevant.

source

pub fn dtr(&self) -> bool

Gets the DTR (data terminal ready) state

source

pub fn rts(&self) -> bool

Gets the RTS (request to send) state

source

pub async fn read_packet( &mut self, data: &mut [u8] ) -> Result<usize, EndpointError>

Reads a single packet from the OUT endpoint. Must be called with a buffer large enough to hold max_packet_size bytes.

source

pub async fn wait_connection(&mut self)

Waits for the USB host to enable this interface

Auto Trait Implementations§

§

impl<'d, D> Freeze for Receiver<'d, D>
where <D as Driver<'d>>::EndpointOut: Freeze,

§

impl<'d, D> !RefUnwindSafe for Receiver<'d, D>

§

impl<'d, D> !Send for Receiver<'d, D>

§

impl<'d, D> !Sync for Receiver<'d, D>

§

impl<'d, D> Unpin for Receiver<'d, D>
where <D as Driver<'d>>::EndpointOut: Unpin,

§

impl<'d, D> !UnwindSafe for Receiver<'d, D>

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