Parts

Struct Parts 

Source
pub struct Parts<'a, SD>
where SD: Comms + 'a,
{ pub spi: SPI<'a, SD>, pub cs: CS<'a, SD>, pub pin_a: PinA<'a, SD>, pub pin_b: PinB<'a, SD>, }
Expand description

Parts is a container for the various parts of a SPIDriver that can be used separately via distinct HAL traits.

The HAL objects inside a particular Parts all share a single underlying communications channel, so it is not possible to access them concurrently on multiple threads. Instead, coordinate all interactions with a single SPIDriver on a single thread.

Fields§

§spi: SPI<'a, SD>

spi is an implementation of the blocking SPI Write and Transfer traits with an 8-bit word size.

§cs: CS<'a, SD>

cs is an implementation of the digital I/O OutputPin trait that controls the SPIDriver’s Chip Select pin.

Setting this pin to low is implemented as “select” on the SPIDriver and setting it to high is implemented as “unselect”, for consistency with the way driver crates tend to expect a CS pin to behave.

§pin_a: PinA<'a, SD>

pin_a is an implementation of the digital I/O OutputPin trait that controls the SPIDriver’s auxillary output pin “A”.

§pin_b: PinB<'a, SD>

pin_a is an implementation of the digital I/O OutputPin trait that controls the SPIDriver’s auxillary output pin “B”.

Auto Trait Implementations§

§

impl<'a, SD> Freeze for Parts<'a, SD>

§

impl<'a, SD> RefUnwindSafe for Parts<'a, SD>
where SD: RefUnwindSafe,

§

impl<'a, SD> Send for Parts<'a, SD>
where SD: Sync,

§

impl<'a, SD> Sync for Parts<'a, SD>
where SD: Sync,

§

impl<'a, SD> Unpin for Parts<'a, SD>

§

impl<'a, SD> UnwindSafe for Parts<'a, SD>
where SD: RefUnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.