ESP-IDF
i2s_obj_t
is only used within ESP-IDF.
Symbol previews are coming soon...
Symbols
loading...
Files
loading (2/5)...
Summary
Syntax
Examples
References
Call Tree
Data Use
Class Tree
Override Tree
Implementations
Instances
Lifecycle
SourceVu
ESP-IDF Framework and Examples
ESP-IDF
i2s_obj_t
i2s_obj_t struct
I2S object instance
Syntax
Show:
Summary
Declaration
from
i2s_legacy.c:134
typedef
struct
{
i2s_port_t
i2s_num
;
int
queue_size
;
QueueHandle_t
i2s_queue
;
uint32_t
last_buf_size
;
i2s_dma_t
*
tx
;
i2s_dma_t
*
rx
;
#if
SOC_GDMA_SUPPORTED
gdma_channel_handle_t
rx_dma_chan
;
gdma_channel_handle_t
tx_dma_chan
;
#else
intr_handle_t
i2s_isr_handle
;
#endif
uint32_t
dma_desc_num
;
uint32_t
dma_frame_num
;
bool
tx_desc_auto_clear
;
bool
use_apll
;
int
fixed_mclk
;
i2s_mclk_multiple_t
mclk_multiple
;
#if
CONFIG_IDF_TARGET_ESP32
esp_clock_output_mapping_handle_t
mclk_out_hdl
;
#endif
#ifdef
CONFIG_PM_ENABLE
esp_pm_lock_handle_t
pm_lock
;
#endif
i2s_hal_context_t
hal
;
i2s_dir_t
dir
;
i2s_role_t
role
;
i2s_comm_mode_t
mode
;
i2s_hal_slot_config_t
slot_cfg
;
i2s_clk_config_t
clk_cfg
;
uint32_t
active_slot
;
uint32_t
total_slot
;
}
i2s_obj_t
;
Fields
Field
Declared as
Description
i2s_obj_t::i2s_num
i2s_port_t
I2S port number.
i2s_obj_t::queue_size
int
I2S event queue size.
i2s_obj_t::i2s_queue
QueueHandle_t
I2S queue handler.
i2s_obj_t::last_buf_size
uint32_t
DMA last buffer size.
i2s_obj_t::tx
i2s_dma_t
*
DMA Tx buffer.
i2s_obj_t::rx
i2s_dma_t
*
DMA Rx buffer.
i2s_obj_t::i2s_isr_handle
intr_handle_t
I2S Interrupt handle.
i2s_obj_t::dma_desc_num
uint32_t
i2s_obj_t::dma_frame_num
uint32_t
i2s_obj_t::tx_desc_auto_clear
bool
I2S auto clear tx descriptor on underflow.
i2s_obj_t::use_apll
bool
I2S use APLL clock.
i2s_obj_t::fixed_mclk
int
I2S fixed MLCK clock.
i2s_obj_t::mclk_multiple
i2s_mclk_multiple_t
The multiple of I2S master clock(MCLK) to sample rate.
i2s_obj_t::mclk_out_hdl
esp_clock_output_mapping_handle_t
i2s_obj_t::pm_lock
esp_pm_lock_handle_t
i2s_obj_t::hal
i2s_hal_context_t
I2S hal context.
i2s_obj_t::dir
i2s_dir_t
i2s_obj_t::role
i2s_role_t
i2s_obj_t::mode
i2s_comm_mode_t
i2s_obj_t::slot_cfg
i2s_hal_slot_config_t
i2s_obj_t::clk_cfg
i2s_clk_config_t
i2s_obj_t::active_slot
uint32_t
Active slot number.
i2s_obj_t::total_slot
uint32_t
Total slot number.
Examples
References
from
examples
Code
Location
Referrer
typedef
struct
{
i2s_legacy.c:134
}
i2s_obj_t
;
i2s_legacy.c:169
i2s_obj_t
static
i2s_obj_t
*
p_i2s
[
SOC_I2S_NUM
]
=
{
i2s_legacy.c:172
i2s_obj_t
*
p_i2s
=
(
i2s_obj_t
*
)
arg
;
i2s_legacy.c:262
i2s_intr_handler_default()
i2s_obj_t
*
obj
=
p_i2s
[
i2s_num
]
;
i2s_legacy.c:1558
i2s_driver_uninstall()
free
(
obj
)
;
i2s_legacy.c:1636
i2s_driver_uninstall()
i2s_obj_t
*
i2s_obj
=
calloc
(
1
,
sizeof
(
i2s_obj_t
)
)
;
i2s_legacy.c:1652
i2s_driver_install()
free
(
i2s_obj
)
;
i2s_legacy.c:1655
i2s_driver_install()
Call Tree
from
examples
All items filtered out
All items filtered out
Data Use
from
examples
All items filtered out
All items filtered out
Class Tree
from
examples
All items filtered out
All items filtered out
Override Tree
from
examples
All items filtered out
All items filtered out
Implementations
from
examples
All items filtered out
All items filtered out
Instances
from
examples
Instance
Scope
Location
Project
p_i2s
i2s_legacy.c:172
Lifecycle
from
examples
i2s_obj_t
is allocated by 1 symbol and is freed by 2 symbols:
i2s_driver_install()
All items filtered out
i2s_obj_t
i2s_driver_uninstall()
i2s_driver_install()
All items filtered out