[]Struct ht16k33::Dimming

pub struct Dimming { /* fields omitted */ }

Display dimming.

The whole display is dimmed via PWM @ N/16 duty cycle; individual LEDs cannot be dimmed independently.

The value should be in the inclusive range BRIGHTNESS_MIN to BRIGHTNESS_MAX. Use the from_u8 helper to create a validated Dimming value.

Methods

impl Dimming

pub const COMMAND: Dimming

Command to set the digital dimming.

pub const BRIGHTNESS_MIN: Dimming

Minimum brightness @ 1/16 PWM duty cycle. (Same as BRIGHTNESS_1_16)

pub const BRIGHTNESS_1_16: Dimming

Brightness @ 1/16 PWM duty cycle.

pub const BRIGHTNESS_2_16: Dimming

Brightness @ 2/16 PWM duty cycle.

pub const BRIGHTNESS_3_16: Dimming

Brightness @ 3/16 PWM duty cycle.

pub const BRIGHTNESS_4_16: Dimming

Brightness @ 4/16 PWM duty cycle.

pub const BRIGHTNESS_5_16: Dimming

Brightness @ 5/16 PWM duty cycle.

pub const BRIGHTNESS_6_16: Dimming

Brightness @ 6/16 PWM duty cycle.

pub const BRIGHTNESS_7_16: Dimming

Brightness @ 7/16 PWM duty cycle.

pub const BRIGHTNESS_8_16: Dimming

Brightness @ 8/16 PWM duty cycle.

pub const BRIGHTNESS_9_16: Dimming

Brightness @ 9/16 PWM duty cycle.

pub const BRIGHTNESS_10_16: Dimming

Brightness @ 10/16 PWM duty cycle.

pub const BRIGHTNESS_11_16: Dimming

Brightness @ 11/16 PWM duty cycle.

pub const BRIGHTNESS_12_16: Dimming

Brightness @ 12/16 PWM duty cycle.

pub const BRIGHTNESS_13_16: Dimming

Brightness @ 13/16 PWM duty cycle.

pub const BRIGHTNESS_14_16: Dimming

Brightness @ 14/16 PWM duty cycle.

pub const BRIGHTNESS_15_16: Dimming

Brightness @ 15/16 PWM duty cycle.

pub const BRIGHTNESS_16_16: Dimming

Brightness @ 16/16 PWM duty cycle.

pub const BRIGHTNESS_MAX: Dimming

Maximum brightness @ 16/16 PWM duty cycle. (Same as BRIGHTNESS_16_16)

This is the Power-on Reset default.

pub const fn empty() -> Dimming

Returns an empty set of flags

pub const fn all() -> Dimming

Returns the set containing all flags.

pub const fn bits(&self) -> u8

Returns the raw value of the flags currently stored.

pub fn from_bits(bits: u8) -> Option<Dimming>

Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.

pub const fn from_bits_truncate(bits: u8) -> Dimming

Convert from underlying bit representation, dropping any bits that do not correspond to flags.

pub const fn is_empty(&self) -> bool

Returns true if no flags are currently stored.

pub const fn is_all(&self) -> bool

Returns true if all flags are currently set.

pub const fn intersects(&self, other: Dimming) -> bool

Returns true if there are flags common to both self and other.

pub const fn contains(&self, other: Dimming) -> bool

Returns true all of the flags in other are contained within self.

pub fn insert(&mut self, other: Dimming)

Inserts the specified flags in-place.

pub fn remove(&mut self, other: Dimming)

Removes the specified flags in-place.

pub fn toggle(&mut self, other: Dimming)

Toggles the specified flags in-place.

pub fn set(&mut self, other: Dimming, value: bool)

Inserts or removes the specified flags depending on the passed value.

impl Dimming[src]

pub fn from_u8(value: u8) -> Result<Self, ValidationError>[src]

Return a validated Dimming value from the given u8.

NOTE: The brightness values are 0-indexed, e.g. 0u8 is equivalent to 1/16, and 15u8 is 16/16.

Errors

The value is validated to be in the inclusive range BRIGHTNESS_MIN to BRIGHTNESS_MAX. If the given u8 value is too large then ht16k33::ValidationError::ValueTooLarge is returned.

Example

use ht16k33::Dimming;

let brightness = Dimming::from_u8(1u8)?;

assert_eq!(1u8, brightness.bits());

Error Example

use ht16k33::Dimming;
use ht16k33::ValidationError;

// Greater than the `BRIGHTNESS_MAX` value of `15u8`.
let value = 16u8;

let brightness = match Dimming::from_u8(value) {
    Ok(brightness) => brightness,
    Err(ValidationError) => panic!(),
};

Trait Implementations

impl Eq for Dimming

impl Extend<Dimming> for Dimming

impl Ord for Dimming

fn max(self, other: Self) -> Self1.21.0[src]

Compares and returns the maximum of two values. Read more

fn min(self, other: Self) -> Self1.21.0[src]

Compares and returns the minimum of two values. Read more

fn clamp(self, min: Self, max: Self) -> Self[src]

🔬 This is a nightly-only experimental API. (clamp)

Restrict a value to a certain interval. Read more

impl PartialEq<Dimming> for Dimming

impl Copy for Dimming

impl Clone for Dimming

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl PartialOrd<Dimming> for Dimming

impl Default for Dimming[src]

impl Debug for Dimming

impl Display for Dimming[src]

impl Sub<Dimming> for Dimming

type Output = Dimming

The resulting type after applying the - operator.

fn sub(self, other: Dimming) -> Dimming

Returns the set difference of the two sets of flags.

impl SubAssign<Dimming> for Dimming

fn sub_assign(&mut self, other: Dimming)

Disables all flags enabled in the set.

impl Not for Dimming

type Output = Dimming

The resulting type after applying the ! operator.

fn not(self) -> Dimming

Returns the complement of this set of flags.

impl BitAnd<Dimming> for Dimming

type Output = Dimming

The resulting type after applying the & operator.

fn bitand(self, other: Dimming) -> Dimming

Returns the intersection between the two sets of flags.

impl BitOr<Dimming> for Dimming

type Output = Dimming

The resulting type after applying the | operator.

fn bitor(self, other: Dimming) -> Dimming

Returns the union of the two sets of flags.

impl BitXor<Dimming> for Dimming

type Output = Dimming

The resulting type after applying the ^ operator.

fn bitxor(self, other: Dimming) -> Dimming

Returns the left flags, but with all the right flags toggled.

impl BitAndAssign<Dimming> for Dimming

fn bitand_assign(&mut self, other: Dimming)

Disables all flags disabled in the set.

impl BitOrAssign<Dimming> for Dimming

fn bitor_assign(&mut self, other: Dimming)

Adds the set of flags.

impl BitXorAssign<Dimming> for Dimming

fn bitxor_assign(&mut self, other: Dimming)

Toggles the set of flags.

impl Hash for Dimming

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given [Hasher]. Read more

impl FromIterator<Dimming> for Dimming

impl Octal for Dimming

impl Binary for Dimming

impl LowerHex for Dimming

impl UpperHex for Dimming

Auto Trait Implementations

impl Send for Dimming

impl Sync for Dimming

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]