[−][src]Struct bno080::interface::spi::SpiInterface
This combines the SPI peripheral and associated control pins such as:
- CSN : Chip Select (aka SS or Slave Select)
- HINTN: Hardware Interrupt. Sensor uses this to indicate it had data available for read
- WAK: Wake pin. Master asserts this to choose SPI mode, then deasserts to wake up the sensor.
Methods
impl<SPI, CSN, IN, WAK, RSTN, CommE, PinE> SpiInterface<SPI, CSN, IN, WAK, RSTN> where
SPI: Write<u8, Error = CommE> + Transfer<u8, Error = CommE>,
CSN: OutputPin<Error = PinE>,
IN: InputPin<Error = PinE>,
WAK: OutputPin<Error = PinE>,
RSTN: OutputPin<Error = PinE>,
[src]
SPI: Write<u8, Error = CommE> + Transfer<u8, Error = CommE>,
CSN: OutputPin<Error = PinE>,
IN: InputPin<Error = PinE>,
WAK: OutputPin<Error = PinE>,
RSTN: OutputPin<Error = PinE>,
Trait Implementations
impl<SPI, CSN, IN, WAK, RS, CommE, PinE> SensorInterface for SpiInterface<SPI, CSN, IN, WAK, RS> where
SPI: Write<u8, Error = CommE> + Transfer<u8, Error = CommE>,
CSN: OutputPin<Error = PinE>,
IN: InputPin<Error = PinE>,
WAK: OutputPin<Error = PinE>,
RS: OutputPin<Error = PinE>,
[src]
SPI: Write<u8, Error = CommE> + Transfer<u8, Error = CommE>,
CSN: OutputPin<Error = PinE>,
IN: InputPin<Error = PinE>,
WAK: OutputPin<Error = PinE>,
RS: OutputPin<Error = PinE>,
type SensorError = Error<CommE, PinE>
Interface error type
fn setup(
&mut self,
delay_source: &mut impl DelayMs<u8>
) -> Result<(), Self::SensorError>
[src]
&mut self,
delay_source: &mut impl DelayMs<u8>
) -> Result<(), Self::SensorError>
fn send_and_receive_packet(
&mut self,
send_buf: &[u8],
recv_buf: &mut [u8]
) -> Result<usize, Self::SensorError>
[src]
&mut self,
send_buf: &[u8],
recv_buf: &mut [u8]
) -> Result<usize, Self::SensorError>
fn write_packet(&mut self, packet: &[u8]) -> Result<(), Self::SensorError>
[src]
fn read_packet(
&mut self,
recv_buf: &mut [u8]
) -> Result<usize, Self::SensorError>
[src]
&mut self,
recv_buf: &mut [u8]
) -> Result<usize, Self::SensorError>
Auto Trait Implementations
impl<SPI, CSN, IN, WAK, RSTN> Send for SpiInterface<SPI, CSN, IN, WAK, RSTN> where
CSN: Send,
IN: Send,
RSTN: Send,
SPI: Send,
WAK: Send,
CSN: Send,
IN: Send,
RSTN: Send,
SPI: Send,
WAK: Send,
impl<SPI, CSN, IN, WAK, RSTN> Sync for SpiInterface<SPI, CSN, IN, WAK, RSTN> where
CSN: Sync,
IN: Sync,
RSTN: Sync,
SPI: Sync,
WAK: Sync,
CSN: Sync,
IN: Sync,
RSTN: Sync,
SPI: Sync,
WAK: Sync,
impl<SPI, CSN, IN, WAK, RSTN> Unpin for SpiInterface<SPI, CSN, IN, WAK, RSTN> where
CSN: Unpin,
IN: Unpin,
RSTN: Unpin,
SPI: Unpin,
WAK: Unpin,
CSN: Unpin,
IN: Unpin,
RSTN: Unpin,
SPI: Unpin,
WAK: Unpin,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,