Struct esp_idf_svc::hal::rmt::FixedLengthSignal
source · pub struct FixedLengthSignal<const N: usize>(/* private fields */);
Expand description
Stack based signal storage for an RMT signal.
Use this if you know the length of the pulses ahead of time and prefer to use the stack.
Internally RMT uses pairs of pulses as part of its data structure. This implementation
you need to set
a two Pulse
s for each index.
let p1 = Pulse::new(PinState::High, PulseTicks::new(10));
let p2 = Pulse::new(PinState::Low, PulseTicks::new(11));
let p3 = Pulse::new(PinState::High, PulseTicks::new(12));
let p4 = Pulse::new(PinState::Low, PulseTicks::new(13));
let mut s = FixedLengthSignal::new();
s.set(0, &(p1, p2));
s.set(1, &(p3, p4));
Implementations§
Trait Implementations§
source§impl<const N: usize> Clone for FixedLengthSignal<N>
impl<const N: usize> Clone for FixedLengthSignal<N>
source§fn clone(&self) -> FixedLengthSignal<N>
fn clone(&self) -> FixedLengthSignal<N>
Returns a copy of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<const N: usize> Default for FixedLengthSignal<N>
impl<const N: usize> Default for FixedLengthSignal<N>
source§fn default() -> FixedLengthSignal<N>
fn default() -> FixedLengthSignal<N>
Returns the “default value” for a type. Read more
source§impl<const N: usize> Signal for FixedLengthSignal<N>
impl<const N: usize> Signal for FixedLengthSignal<N>
fn as_slice(&self) -> &[rmt_item32_t]
Auto Trait Implementations§
impl<const N: usize> Freeze for FixedLengthSignal<N>
impl<const N: usize> RefUnwindSafe for FixedLengthSignal<N>
impl<const N: usize> Send for FixedLengthSignal<N>
impl<const N: usize> Sync for FixedLengthSignal<N>
impl<const N: usize> Unpin for FixedLengthSignal<N>
impl<const N: usize> UnwindSafe for FixedLengthSignal<N>
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)