pub trait _embedded_hal_spi_FullDuplex<Word> {
type Error;
// Required methods
fn read(&mut self) -> Result<Word, Error<Self::Error>>;
fn send(&mut self, word: Word) -> Result<(), Error<Self::Error>>;
}
Expand description
Full duplex (master mode)
Notes
-
It’s the task of the user of this interface to manage the slave select lines
-
Due to how full duplex SPI works each
read
call must be preceded by asend
call. -
Some SPIs can work with 8-bit and 16-bit words. You can overload this trait with different
Word
types to allow operation in both modes.
Required Associated Types§
Required Methods§
Implementations on Foreign Types§
source§impl<C> FullDuplex<<C as AnyConfig>::Word> for Spi<C, Duplex>where
C: ValidConfig,
<C as AnyConfig>::Size: AtomicSize,
<C as AnyConfig>::Word: PrimInt + AsPrimitive<u32>,
u32: AsPrimitive<<C as AnyConfig>::Word>,
impl<C> FullDuplex<<C as AnyConfig>::Word> for Spi<C, Duplex>where C: ValidConfig, <C as AnyConfig>::Size: AtomicSize, <C as AnyConfig>::Word: PrimInt + AsPrimitive<u32>, u32: AsPrimitive<<C as AnyConfig>::Word>,
Implement spi::FullDuplex
for Spi
structs with AtomicSize
spi::FullDuplex
is only implemented when the Spi
struct has Duplex
Capability
and the transaction Length
is <= 4
bytes. When the
Length
is <= 4
, the Word
is a primitive integer, with a size that
depends on the Length
(u8
, u16
or u32
).