pub struct Spi<S, D, P, const DS: u8 = 8>{ /* private fields */ }Expand description
Configured Spi bus.
This struct implements the embedded-hal Spi-related traits. It represents unique ownership
of the entire Spi bus of a single configured rp235x Spi peripheral.
Spi has four generic parameters:
-
S: a typestate for whether the bus isEnabledorDisabled. Upon initial creation, the bus isDisabled. You will then need to initialize it as either a main (master) or sub (slave) device, providing the necessary configuration, at which point it will becomeEnabled. -
D: Which of the concrete Spi peripherals is being used,pac::SPI0orpac::SPI1 -
P: Which pins are being used to configure the Spi peripheralD. A table of valid pinouts for each Spi peripheral can be found in section X.X.X of the rp235x datasheet.The
ValidSpiPinouttrait is implemented for tuples of pin types that follow the layout:(Tx, Sck)(i.e. first the “Tx”/“MOSI” pin, then the “Sck”/“Clock” pin)(Tx, Rx, Sck)(i.e. first “Tx”/“MOSI”, then “Rx”/“MISO”, then “Sck”/“Clock” pin)
If you select an invalid layout, you will get a compile error that
Pdoes not implementValidSpiPinoutfor your specifiedSpiDeviceperipheralD -
DS: The “data size”, i.e. the number of bits transferred per data frame. Defaults to 8.
In most cases you won’t have to specify these types manually and can let the compiler infer
them for you based on the values you pass in to new. If you want to select a different
data frame size, you’ll need to do that by specifying the DS parameter manually.
See the module level docs for an example.
Implementations§
Source§impl<S, D, P, const DS: u8> Spi<S, D, P, DS>
impl<S, D, P, const DS: u8> Spi<S, D, P, DS>
Sourcepub fn set_baudrate<F, B>(
&mut self,
peri_frequency: F,
baudrate: B,
) -> Rate<u32, 1, 1>
pub fn set_baudrate<F, B>( &mut self, peri_frequency: F, baudrate: B, ) -> Rate<u32, 1, 1>
Set device pre-scale and post-div properties to match the given baudrate as closely as possible based on the given peripheral clock frequency.
Typically the peripheral clock is set to 125_000_000 Hz.
Returns the frequency that we were able to achieve, which may not be exactly the requested baudrate.
Sourcepub fn set_format(&mut self, frame_format: FrameFormat)
pub fn set_format(&mut self, frame_format: FrameFormat)
Set format
Source§impl<D, P, const DS: u8> Spi<Disabled, D, P, DS>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P, const DS: u8> Spi<Disabled, D, P, DS>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Sourcepub fn new(device: D, pins: P) -> Spi<Disabled, D, P, DS>
pub fn new(device: D, pins: P) -> Spi<Disabled, D, P, DS>
Create new not initialized Spi bus. Initialize it with .init
or .init_slave.
Valid pin sets are in the form of (Tx, Sck) or (Tx, Rx, Sck)
If your pins are dynamically identified (Pin<DynPinId, _, _>) they will first need to pass
validation using their corresponding ValidatedPinXX.
Sourcepub fn init<F, B, M>(
self,
resets: &mut RESETS,
peri_frequency: F,
baudrate: B,
frame_format: M,
) -> Spi<Enabled, D, P, DS>
pub fn init<F, B, M>( self, resets: &mut RESETS, peri_frequency: F, baudrate: B, frame_format: M, ) -> Spi<Enabled, D, P, DS>
Initialize the SPI in master mode
Sourcepub fn init_slave<M>(
self,
resets: &mut RESETS,
frame_format: M,
) -> Spi<Enabled, D, P, DS>where
M: Into<FrameFormat>,
pub fn init_slave<M>(
self,
resets: &mut RESETS,
frame_format: M,
) -> Spi<Enabled, D, P, DS>where
M: Into<FrameFormat>,
Initialize the SPI in slave mode
Trait Implementations§
Source§impl<D, P> ErrorType for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> ErrorType for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ErrorType for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type Error = Infallible
type Error = Infallible
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex<u8> for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> FullDuplex for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> FullDuplex for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u8
type ReceivedWord = u8
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u8
type ReceivedWord = u8
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u8
type ReceivedWord = u8
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u8
type ReceivedWord = u8
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u8
type ReceivedWord = u8
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> ReadTarget for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> ReadTarget for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type ReceivedWord = u16
type ReceivedWord = u16
Source§fn rx_treq() -> Option<u8>
fn rx_treq() -> Option<u8>
None for memory buffers).Source§fn rx_address_count(&self) -> (u32, u32)
fn rx_address_count(&self) -> (u32, u32)
Source§fn rx_increment(&self) -> bool
fn rx_increment(&self) -> bool
Source§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 10> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 10> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 10> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 10> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 10> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 10> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 11> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 11> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 11> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 11> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 11> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 11> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 12> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 12> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 12> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 12> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 12> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 12> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 13> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 13> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 13> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 13> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 13> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 13> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 14> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 14> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 14> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 14> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 14> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 14> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 15> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 15> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 15> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 15> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 15> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 15> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 16> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 16> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 16> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 16> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 16> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 16> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u16],
) -> Result<(), <Spi<Enabled, D, P, 9> as ErrorType>::Error>
fn read( &mut self, words: &mut [u16], ) -> Result<(), <Spi<Enabled, D, P, 9> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 9> as ErrorType>::Error>
fn write( &mut self, words: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 9> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u16],
write: &[u16],
) -> Result<(), <Spi<Enabled, D, P, 9> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u16], write: &[u16], ) -> Result<(), <Spi<Enabled, D, P, 9> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u8],
) -> Result<(), <Spi<Enabled, D, P> as ErrorType>::Error>
fn read( &mut self, words: &mut [u8], ) -> Result<(), <Spi<Enabled, D, P> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u8],
) -> Result<(), <Spi<Enabled, D, P> as ErrorType>::Error>
fn write( &mut self, words: &[u8], ) -> Result<(), <Spi<Enabled, D, P> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u8],
write: &[u8],
) -> Result<(), <Spi<Enabled, D, P> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u8], write: &[u8], ) -> Result<(), <Spi<Enabled, D, P> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u8],
) -> Result<(), <Spi<Enabled, D, P, 4> as ErrorType>::Error>
fn read( &mut self, words: &mut [u8], ) -> Result<(), <Spi<Enabled, D, P, 4> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 4> as ErrorType>::Error>
fn write( &mut self, words: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 4> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u8],
write: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 4> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u8], write: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 4> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u8],
) -> Result<(), <Spi<Enabled, D, P, 5> as ErrorType>::Error>
fn read( &mut self, words: &mut [u8], ) -> Result<(), <Spi<Enabled, D, P, 5> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 5> as ErrorType>::Error>
fn write( &mut self, words: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 5> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u8],
write: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 5> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u8], write: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 5> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u8],
) -> Result<(), <Spi<Enabled, D, P, 6> as ErrorType>::Error>
fn read( &mut self, words: &mut [u8], ) -> Result<(), <Spi<Enabled, D, P, 6> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 6> as ErrorType>::Error>
fn write( &mut self, words: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 6> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u8],
write: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 6> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u8], write: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 6> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> SpiBus for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> SpiBus for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§fn read(
&mut self,
words: &mut [u8],
) -> Result<(), <Spi<Enabled, D, P, 7> as ErrorType>::Error>
fn read( &mut self, words: &mut [u8], ) -> Result<(), <Spi<Enabled, D, P, 7> as ErrorType>::Error>
words from the slave. Read moreSource§fn write(
&mut self,
words: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 7> as ErrorType>::Error>
fn write( &mut self, words: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 7> as ErrorType>::Error>
words to the slave, ignoring all the incoming words. Read moreSource§fn transfer(
&mut self,
read: &mut [u8],
write: &[u8],
) -> Result<(), <Spi<Enabled, D, P, 7> as ErrorType>::Error>
fn transfer( &mut self, read: &mut [u8], write: &[u8], ) -> Result<(), <Spi<Enabled, D, P, 7> as ErrorType>::Error>
write is written to the slave on MOSI and
words received on MISO are stored in read. Read moreSource§impl<D, P> WriteTarget for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u8
type TransmittedWord = u8
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u8
type TransmittedWord = u8
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u8
type TransmittedWord = u8
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u8
type TransmittedWord = u8
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u8
type TransmittedWord = u8
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
Source§impl<D, P> WriteTarget for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> WriteTarget for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Source§type TransmittedWord = u16
type TransmittedWord = u16
Source§fn tx_treq() -> Option<u8>
fn tx_treq() -> Option<u8>
None for memory buffers).Source§fn tx_address_count(&mut self) -> (u32, u32)
fn tx_address_count(&mut self) -> (u32, u32)
Source§fn tx_increment(&self) -> bool
fn tx_increment(&self) -> bool
impl<D, P> Default<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u16> for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> Default<u8> for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessReadTarget for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 10>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 11>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 12>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 13>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 14>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 15>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 16>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 4>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 5>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 6>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 7>where
D: SpiDevice,
P: ValidSpiPinout<D>,
impl<D, P> EndlessWriteTarget for Spi<Enabled, D, P, 9>where
D: SpiDevice,
P: ValidSpiPinout<D>,
Auto Trait Implementations§
impl<S, D, P, const DS: u8> Freeze for Spi<S, D, P, DS>
impl<S, D, P, const DS: u8> RefUnwindSafe for Spi<S, D, P, DS>
impl<S, D, P, const DS: u8> Send for Spi<S, D, P, DS>
impl<S, D, P, const DS: u8> Sync for Spi<S, D, P, DS>
impl<S, D, P, const DS: u8> Unpin for Spi<S, D, P, DS>
impl<S, D, P, const DS: u8> UnwindSafe for Spi<S, D, P, DS>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<W, S> WriteIter<W> for S
impl<W, S> WriteIter<W> for S
Source§type Error = <S as FullDuplex<W>>::Error
type Error = <S as FullDuplex<W>>::Error
Source§fn write_iter<WI>(
&mut self,
words: WI,
) -> Result<(), <S as FullDuplex<W>>::Error>where
WI: IntoIterator<Item = W>,
fn write_iter<WI>(
&mut self,
words: WI,
) -> Result<(), <S as FullDuplex<W>>::Error>where
WI: IntoIterator<Item = W>,
words to the slave, ignoring all the incoming words