SevSegSpim

Struct SevSegSpim 

Source
pub struct SevSegSpim<SPIM, CS> { /* private fields */ }

Implementations§

Source§

impl<SPIM, CS> SevSegSpim<SPIM, CS>
where SPIM: Write<u8>, CS: OutputPin,

Source

pub fn new(spim: SPIM, csn: CS) -> Self

Create a new SparkFun Serial Seven Segment display using a SPI (Master) port. The SPI port has a maximum frequency of 250kHz, and must be in Mode 0.

Source

pub fn release(self) -> (SPIM, CS)

Release the components

Trait Implementations§

Source§

impl<SPIM, CS> SevenSegInterface for SevSegSpim<SPIM, CS>
where SPIM: Write<u8>, CS: OutputPin,

Source§

type InterfaceError = SpimError<<SPIM as Write<u8>>::Error, <CS as OutputPin>::Error>

A single error type used by the interface
Source§

fn send(&mut self, data: &[u8]) -> Result<(), Error<Self::InterfaceError>>

Sending commands to the interface
Source§

fn set_cursor(&mut self, col: u8) -> Result<(), Error<Self::InterfaceError>>

Set the digit cursor to a particular location col may be 0..=3, from left to right.
Source§

fn set_brightness( &mut self, bright: u8, ) -> Result<(), Error<Self::InterfaceError>>

Set the brightness for the display. The datasheet says that 100 is the brightest, however my device gets brighter with values above 100 (up to 255). Your mileage may vary.
Source§

fn clear(&mut self) -> Result<(), Error<Self::InterfaceError>>

Completely clear the display
Source§

fn write_digit(&mut self, digit: u8) -> Result<(), Error<Self::InterfaceError>>

Write a digit to the curent cursor position. This also increments the cursor position
Source§

fn write_punctuation( &mut self, punct_flags: PunctuationFlags, ) -> Result<(), Error<Self::InterfaceError>>

Write the requested punctuation to the display. This does not take the current state into account, so any unset flags in punct_flags will turn the corresponding LEDs off.
Source§

fn write_digits( &mut self, digits: &[u8], ) -> Result<(), Error<Self::InterfaceError>>

Write the requested digits to the display, starting at the current cursor position. Each digit must be in the range 0x0..=0xF, and up to 4 digits may be updated at once. The cursor is incremented after each digit
Source§

fn set_num(&mut self, num: u16) -> Result<(), Error<Self::InterfaceError>>

Write the number to the display. The number will be left-filled with zeroes if necessary. After this function, the cursor will be at position 0.

Auto Trait Implementations§

§

impl<SPIM, CS> Freeze for SevSegSpim<SPIM, CS>
where SPIM: Freeze, CS: Freeze,

§

impl<SPIM, CS> RefUnwindSafe for SevSegSpim<SPIM, CS>
where SPIM: RefUnwindSafe, CS: RefUnwindSafe,

§

impl<SPIM, CS> Send for SevSegSpim<SPIM, CS>
where SPIM: Send, CS: Send,

§

impl<SPIM, CS> Sync for SevSegSpim<SPIM, CS>
where SPIM: Sync, CS: Sync,

§

impl<SPIM, CS> Unpin for SevSegSpim<SPIM, CS>
where SPIM: Unpin, CS: Unpin,

§

impl<SPIM, CS> UnwindSafe for SevSegSpim<SPIM, CS>
where SPIM: UnwindSafe, CS: UnwindSafe,

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.