pub struct i2s_pdm_tx_slot_config_t {
Show 13 fields pub data_bit_width: i2s_data_bit_width_t, pub slot_bit_width: i2s_slot_bit_width_t, pub slot_mode: i2s_slot_mode_t, pub sd_prescale: u32, pub sd_scale: i2s_pdm_sig_scale_t, pub hp_scale: i2s_pdm_sig_scale_t, pub lp_scale: i2s_pdm_sig_scale_t, pub sinc_scale: i2s_pdm_sig_scale_t, pub line_mode: i2s_pdm_tx_line_mode_t, pub hp_en: bool, pub hp_cut_off_freq_hz: f32, pub sd_dither: u32, pub sd_dither2: u32,
Expand description

@brief I2S slot configuration for pdm tx mode


§data_bit_width: i2s_data_bit_width_t

< I2S sample data bit width (valid data bits per sample), only support 16 bits for PDM mode

§slot_bit_width: i2s_slot_bit_width_t

< I2S slot bit width (total bits per slot), only support 16 bits for PDM mode

§slot_mode: i2s_slot_mode_t

< Set mono or stereo mode with I2S_SLOT_MODE_MONO or I2S_SLOT_MODE_STEREO For PDM TX mode, mono means the data buffer only contains one slot data, Stereo means the data buffer contains two slots data

§sd_prescale: u32

< Sigma-delta filter prescale

§sd_scale: i2s_pdm_sig_scale_t

< Sigma-delta filter scaling value

§hp_scale: i2s_pdm_sig_scale_t

< High pass filter scaling value

§lp_scale: i2s_pdm_sig_scale_t

< Low pass filter scaling value

§sinc_scale: i2s_pdm_sig_scale_t

< Sinc filter scaling value

§line_mode: i2s_pdm_tx_line_mode_t

< PDM TX line mode, one-line codec, one-line dac, two-line dac mode can be selected

§hp_en: bool

< High pass filter enable

§hp_cut_off_freq_hz: f32

< High pass filter cut-off frequency, range 23.3Hz ~ 185Hz, see cut-off frequency sheet above

§sd_dither: u32

< Sigma-delta filter dither

§sd_dither2: u32

< Sigma-delta filter dither2

Trait Implementations§


impl Clone for i2s_pdm_tx_slot_config_t


fn clone(&self) -> i2s_pdm_tx_slot_config_t

Returns a copy of the value. Read more

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

Performs copy-assignment from source. Read more

impl Debug for i2s_pdm_tx_slot_config_t


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

Formats the value using the given formatter. Read more

impl Default for i2s_pdm_tx_slot_config_t


fn default() -> Self

Returns the “default value” for a type. Read more

impl Copy for i2s_pdm_tx_slot_config_t

Auto Trait Implementations§

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.