Struct esp_idf_svc::hal::sys::i2s_std_clk_config_t
source · #[repr(C)]pub struct i2s_std_clk_config_t {
pub sample_rate_hz: u32,
pub clk_src: i32,
pub ext_clk_freq_hz: u32,
pub mclk_multiple: u32,
}
Expand description
@brief I2S clock configuration for standard mode
Fields§
§sample_rate_hz: u32
< I2S sample rate
clk_src: i32
< Choose clock source, see soc_periph_i2s_clk_src_t
for the supported clock sources.
selected I2S_CLK_SRC_EXTERNAL
(if supports) to enable the external source clock input via MCLK pin,
ext_clk_freq_hz: u32
< External clock source frequency in Hz, only take effect when clk_src = I2S_CLK_SRC_EXTERNAL
, otherwise this field will be ignored,
Please make sure the frequency input is equal or greater than BCLK, i.e. sample_rate_hz * slot_bits * 2
mclk_multiple: u32
< The multiple of MCLK to the sample rate
Default is 256 in the helper macro, it can satisfy most of cases,
but please set this field a multiple of 3
(like 384) when using 24-bit data width,
otherwise the sample rate might be inaccurate
Trait Implementations§
source§impl Clone for i2s_std_clk_config_t
impl Clone for i2s_std_clk_config_t
source§fn clone(&self) -> i2s_std_clk_config_t
fn clone(&self) -> i2s_std_clk_config_t
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 Debug for i2s_std_clk_config_t
impl Debug for i2s_std_clk_config_t
source§impl Default for i2s_std_clk_config_t
impl Default for i2s_std_clk_config_t
source§fn default() -> i2s_std_clk_config_t
fn default() -> i2s_std_clk_config_t
Returns the “default value” for a type. Read more
impl Copy for i2s_std_clk_config_t
Auto Trait Implementations§
impl Freeze for i2s_std_clk_config_t
impl RefUnwindSafe for i2s_std_clk_config_t
impl Send for i2s_std_clk_config_t
impl Sync for i2s_std_clk_config_t
impl Unpin for i2s_std_clk_config_t
impl UnwindSafe for i2s_std_clk_config_t
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
)§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)