embassy-stm32

Crates

git

Versions

stm32g483ce

Flavors

๐Ÿ“ฃ We want to hear from you! Fill the Rust Embedded 2024 micro-survey.

Struct embassy_stm32::usart::RingBufferedUartRx

source ยท
pub struct RingBufferedUartRx<'d> { /* private fields */ }
Expand description

Rx-only Ring-buffered UART Driver

Created with UartRx::into_ring_buffered

Implementationsยง

sourceยง

impl<'d> RingBufferedUartRx<'d>

source

pub fn start(&mut self) -> Result<(), Error>

Clear the ring buffer and start receiving in the background

source

pub fn set_config(&mut self, config: &Config) -> Result<(), ConfigError>

Reconfigure the driver

source

pub async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Error>

Read bytes that are readily available in the ring buffer. If no bytes are currently available in the buffer the call waits until the some bytes are available (at least one byte and at most half the buffer size)

Background receive is started if start() has not been previously called.

Receive in the background is terminated if an error is returned. It must then manually be started again by calling start() or by re-calling read().

Trait Implementationsยง

sourceยง

impl Drop for RingBufferedUartRx<'_>

sourceยง

fn drop(&mut self)

Executes the destructor for this type. Read more
sourceยง

impl ErrorType for RingBufferedUartRx<'_>

sourceยง

type Error = Error

Error type of all the IO operations on this type.
sourceยง

impl Read for RingBufferedUartRx<'_>

sourceยง

async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error>

Read some bytes from this source into the specified buffer, returning how many bytes were read. Read more
sourceยง

async fn read_exact( &mut self, buf: &mut [u8], ) -> Result<(), ReadExactError<Self::Error>>

Read the exact number of bytes required to fill buf. Read more
sourceยง

impl<'d> SetConfig for RingBufferedUartRx<'d>

sourceยง

type Config = Config

The configuration type used by this driver.
sourceยง

type ConfigError = ConfigError

The error type that can occur if set_config fails.
sourceยง

fn set_config(&mut self, config: &Self::Config) -> Result<(), Self::ConfigError>

Set the configuration of the driver.

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