pub struct TransmitConfig {
    pub clock_divider: u8,
    pub mem_block_num: u8,
    pub carrier: Option<CarrierConfig>,
    pub looping: Loop,
    pub idle: Option<PinState>,
    pub aware_dfs: bool,
    pub intr_flags: EnumSet<InterruptType>,
}
Expand description

Used when creating a [Transmit][crate::rmt::Transmit] instance.

Fields§

§clock_divider: u8§mem_block_num: u8§carrier: Option<CarrierConfig>§looping: Loop§idle: Option<PinState>

Enable and set the signal level on the output if idle.

§aware_dfs: bool

Channel can work during APB clock scaling.

When set, RMT channel will take REF_TICK or XTAL as source clock. The benefit is, RMT channel can continue work even when APB clock is changing.

§intr_flags: EnumSet<InterruptType>

Implementations§

source§

impl TransmitConfig

source

pub fn new() -> Self

source

pub fn aware_dfs(self, enable: bool) -> Self

source

pub fn mem_block_num(self, mem_block_num: u8) -> Self

source

pub fn clock_divider(self, divider: u8) -> Self

source

pub fn looping(self, looping: Loop) -> Self

source

pub fn carrier(self, carrier: Option<CarrierConfig>) -> Self

source

pub fn idle(self, idle: Option<PinState>) -> Self

source

pub fn intr_flags(self, flags: EnumSet<InterruptType>) -> Self

Trait Implementations§

source§

impl Clone for TransmitConfig

source§

fn clone(&self) -> TransmitConfig

Returns a copy of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TransmitConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for TransmitConfig

source§

fn default() -> Self

Defaults from <https://github.com/espressif/esp-idf/blob/master/components/driver/include/driver/rmt.h#L101>

Auto Trait Implementations§

§

impl RefUnwindSafe for TransmitConfig

§

impl Send for TransmitConfig

§

impl Sync for TransmitConfig

§

impl Unpin for TransmitConfig

§

impl UnwindSafe for TransmitConfig

Blanket Implementations§

§

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

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

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

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

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

§

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

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

fn into(self) -> U

Calls U::from(self).

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

§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where 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>

Performs the conversion.
§

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

§

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

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

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

Performs the conversion.