pub trait Adin1110Protocol {
type SpiError: Debug + Error;
// Required methods
async fn read_reg(
&mut self,
addr: u16,
) -> Result<u32, AdinError<Self::SpiError>>;
async fn write_reg(
&mut self,
addr: u16,
val: u32,
) -> Result<(), AdinError<Self::SpiError>>;
async fn read_fifo(
&mut self,
frame: &mut [u8],
) -> Result<usize, AdinError<Self::SpiError>>;
async fn write_fifo(
&mut self,
frame: &[u8],
) -> Result<(), AdinError<Self::SpiError>>;
}Expand description
Protocol abstraction trait for ADIN1110 SPI communication
Required Associated Types§
Required Methods§
Sourceasync fn read_reg(
&mut self,
addr: u16,
) -> Result<u32, AdinError<Self::SpiError>>
async fn read_reg( &mut self, addr: u16, ) -> Result<u32, AdinError<Self::SpiError>>
Read a register
Sourceasync fn write_reg(
&mut self,
addr: u16,
val: u32,
) -> Result<(), AdinError<Self::SpiError>>
async fn write_reg( &mut self, addr: u16, val: u32, ) -> Result<(), AdinError<Self::SpiError>>
Write a register
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".