Expand description
§Asynchronous TX support.
This module provides support for asynchronous non-blocking TX transfers.
It provides a static number of async wakers to allow a configurable amount of pollable TxFutures. Each UARTLite Tx instance which performs asynchronous TX operations needs to be to explicitely assigned a waker when creating an awaitable TxAsync structure. Retrieve the resulting TxToken via TxAsync::token right after construction and pass it to on_interrupt_tx from your interrupt handler.
The maximum number of available wakers is configured via the waker feature flags:
1-waker2-wakers4-wakers8-wakers16-wakers32-wakers
Structs§
- Invalid
Waker Index - Invalid waker index for NUM_WAKERS.
- TxAsync
- Asynchronous TX driver.
- TxContext
- TX context structure.
- TxFuture
- TX future structure.
- TxToken
- Identifies a TxAsync driver’s UART instance and waker slot, e.g. for use in an interrupt handler.
Constants§
- NUM_
WAKERS 1-waker - 1 waker (default).
Functions§
- on_
interrupt_ ⚠tx - This is a generic interrupt handler to handle asynchronous UART TX operations for a given UART peripheral.