pub struct I8080Transfer<'d, BUF: DmaTxBuffer, Dm: DriverMode> { /* private fields */ }Expand description
Represents an ongoing (or potentially finished) transfer using the I8080 LCD interface
Implementations§
Source§impl<'d, BUF: DmaTxBuffer, Dm: DriverMode> I8080Transfer<'d, BUF, Dm>
impl<'d, BUF: DmaTxBuffer, Dm: DriverMode> I8080Transfer<'d, BUF, Dm>
Source§impl<BUF: DmaTxBuffer> I8080Transfer<'_, BUF, Async>
impl<BUF: DmaTxBuffer> I8080Transfer<'_, BUF, Async>
Sourcepub async fn wait_for_done(&mut self)
pub async fn wait_for_done(&mut self)
Waits for Self::is_done to return true.
Source§impl<BUF: DmaTxBuffer> I8080Transfer<'_, BUF, Blocking>
Interrupt management for an ongoing transfer.
impl<BUF: DmaTxBuffer> I8080Transfer<'_, BUF, Blocking>
Interrupt management for an ongoing transfer.
The driver itself has been consumed by I8080::send, so these methods
take &self and allow an interrupt handler to manage the interrupt
sources through the transfer object.
§Stability
This API is marked as unstable and is only available when the unstable
crate feature is enabled. This comes with no stability guarantees, and could be changed
or removed at any time.
Sourcepub fn listen(&self, interrupts: impl Into<EnumSet<I8080Interrupt>>)
pub fn listen(&self, interrupts: impl Into<EnumSet<I8080Interrupt>>)
Listens for the given LCD interrupt sources.
Sourcepub fn unlisten(&self, interrupts: impl Into<EnumSet<I8080Interrupt>>)
pub fn unlisten(&self, interrupts: impl Into<EnumSet<I8080Interrupt>>)
Stops listening for the given LCD interrupt sources.
Sourcepub fn interrupts(&self) -> EnumSet<I8080Interrupt>
pub fn interrupts(&self) -> EnumSet<I8080Interrupt>
Returns the asserted LCD interrupt sources.
Sourcepub fn clear_interrupts(&self, interrupts: impl Into<EnumSet<I8080Interrupt>>)
pub fn clear_interrupts(&self, interrupts: impl Into<EnumSet<I8080Interrupt>>)
Clears the given asserted LCD interrupt sources.
Sourcepub fn listen_dma(&self, interrupts: impl Into<EnumSet<DmaTxInterrupt>>)
pub fn listen_dma(&self, interrupts: impl Into<EnumSet<DmaTxInterrupt>>)
Listens for the given DMA TX interrupt sources.
Sourcepub fn unlisten_dma(&self, interrupts: impl Into<EnumSet<DmaTxInterrupt>>)
pub fn unlisten_dma(&self, interrupts: impl Into<EnumSet<DmaTxInterrupt>>)
Stops listening for the given DMA TX interrupt sources.
Sourcepub fn interrupts_dma(&self) -> EnumSet<DmaTxInterrupt>
pub fn interrupts_dma(&self) -> EnumSet<DmaTxInterrupt>
Returns the asserted DMA TX interrupt sources.
Sourcepub fn clear_interrupts_dma(
&self,
interrupts: impl Into<EnumSet<DmaTxInterrupt>>,
)
pub fn clear_interrupts_dma( &self, interrupts: impl Into<EnumSet<DmaTxInterrupt>>, )
Clears the given asserted DMA TX interrupt sources.
Trait Implementations§
Source§impl<BUF: DmaTxBuffer, Dm: DriverMode> Deref for I8080Transfer<'_, BUF, Dm>
Available on crate feature unstable only.
impl<BUF: DmaTxBuffer, Dm: DriverMode> Deref for I8080Transfer<'_, BUF, Dm>
unstable only.Source§impl<BUF: DmaTxBuffer, Dm: DriverMode> DerefMut for I8080Transfer<'_, BUF, Dm>
Available on crate feature unstable only.
impl<BUF: DmaTxBuffer, Dm: DriverMode> DerefMut for I8080Transfer<'_, BUF, Dm>
unstable only.Source§impl<BUF: DmaTxBuffer, Dm: DriverMode> Drop for I8080Transfer<'_, BUF, Dm>
Available on crate feature unstable only.
impl<BUF: DmaTxBuffer, Dm: DriverMode> Drop for I8080Transfer<'_, BUF, Dm>
unstable only.Auto Trait Implementations§
impl<'d, BUF, Dm> !RefUnwindSafe for I8080Transfer<'d, BUF, Dm>
impl<'d, BUF, Dm> !UnwindSafe for I8080Transfer<'d, BUF, Dm>
impl<'d, BUF, Dm> Freeze for I8080Transfer<'d, BUF, Dm>where
<BUF as DmaTxBuffer>::View: Freeze,
impl<'d, BUF, Dm> Send for I8080Transfer<'d, BUF, Dm>where
<BUF as DmaTxBuffer>::View: Send,
Dm: Send,
impl<'d, BUF, Dm> Sync for I8080Transfer<'d, BUF, Dm>where
<BUF as DmaTxBuffer>::View: Sync,
Dm: Sync,
impl<'d, BUF, Dm> Unpin for I8080Transfer<'d, BUF, Dm>where
<BUF as DmaTxBuffer>::View: Unpin,
Dm: Unpin,
impl<'d, BUF, Dm> UnsafeUnpin for I8080Transfer<'d, BUF, Dm>where
<BUF as DmaTxBuffer>::View: UnsafeUnpin,
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> CryptoRng for Twhere
T: DerefMut,
<T as Deref>::Target: CryptoRng,
impl<R> CryptoRng for Rwhere
R: TryCryptoRng<Error = Infallible> + ?Sized,
§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
§impl<P, T> Receiver for Pwhere
P: Deref<Target = T> + ?Sized,
T: ?Sized,
impl<P, T> Receiver for Pwhere
P: Deref<Target = T> + ?Sized,
T: ?Sized,
impl<R> RngCore for Rwhere
R: Rng,
impl<R> TryCryptoRng for Rwhere
R: CryptoRng + ?Sized,
impl<R> TryCryptoRng for Rwhere
R: DerefMut,
<R as Deref>::Target: TryCryptoRng,
§impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
§impl<T, U> TryInto<U> for Twhere
U: TryFrom<T>,
impl<T, U> TryInto<U> for Twhere
U: TryFrom<T>,
Source§impl<R> TryRng for Rwhere
R: DerefMut,
<R as Deref>::Target: TryRng,
impl<R> TryRng for Rwhere
R: DerefMut,
<R as Deref>::Target: TryRng,
Source§type Error = <<R as Deref>::Target as TryRng>::Error
type Error = <<R as Deref>::Target as TryRng>::Error
Source§fn try_next_u32(&mut self) -> Result<u32, <R as TryRng>::Error>
fn try_next_u32(&mut self) -> Result<u32, <R as TryRng>::Error>
u32.Source§fn try_next_u64(&mut self) -> Result<u64, <R as TryRng>::Error>
fn try_next_u64(&mut self) -> Result<u64, <R as TryRng>::Error>
u64.Source§fn try_fill_bytes(&mut self, dst: &mut [u8]) -> Result<(), <R as TryRng>::Error>
fn try_fill_bytes(&mut self, dst: &mut [u8]) -> Result<(), <R as TryRng>::Error>
dst entirely with random data.Source§impl<R> TryRngCore for Rwhere
R: RngCore + ?Sized,
impl<R> TryRngCore for Rwhere
R: RngCore + ?Sized,
Source§fn try_next_u32(&mut self) -> Result<u32, <R as TryRngCore>::Error>
fn try_next_u32(&mut self) -> Result<u32, <R as TryRngCore>::Error>
u32.Source§fn try_next_u64(&mut self) -> Result<u64, <R as TryRngCore>::Error>
fn try_next_u64(&mut self) -> Result<u64, <R as TryRngCore>::Error>
u64.Source§fn try_fill_bytes(
&mut self,
dst: &mut [u8],
) -> Result<(), <R as TryRngCore>::Error>
fn try_fill_bytes( &mut self, dst: &mut [u8], ) -> Result<(), <R as TryRngCore>::Error>
dest entirely with random data.Source§fn unwrap_err(self) -> UnwrapErr<Self>where
Self: Sized,
fn unwrap_err(self) -> UnwrapErr<Self>where
Self: Sized,
UnwrapErr wrapper.Source§fn unwrap_mut(&mut self) -> UnwrapMut<'_, Self>
fn unwrap_mut(&mut self) -> UnwrapMut<'_, Self>
UnwrapMut wrapper.