struct i2s_config config_rx;
struct i2s_config config_tx;
/* Общие параметры */
config_rx.word_size = SAMPLE_BIT_WIDTH;
config_rx.channels = NUMBER_OF_CHANNELS;
config_rx.format = I2S_FMT_DATA_FORMAT_I2S;
config_rx.options = I2S_OPT_BIT_CLK_MASTER | I2S_OPT_FRAME_CLK_MASTER;
config_rx.timeout = TIMEOUT;
/* Настройки под RX (Кодек) */
config_rx.frame_clk_freq = SAMPLE_FREQ_RX; // 16000 Hz
config_rx.mem_slab = &mem_slab_rx;
config_rx.block_size = BLOCK_SIZE_RX;
i2s_configure(i2s_dev_rx, I2S_DIR_RX, &config_rx);
/* Настройки под TX (Усилитель) */
config_tx = config_rx; // Копируем общие настройки
config_tx.frame_clk_freq = SAMPLE_FREQ_TX; // 32000 Hz (TFA9882 доволен)
config_tx.mem_slab = &mem_slab_tx;
config_tx.block_size = BLOCK_SIZE_TX;
i2s_configure(i2s_dev_tx, I2S_DIR_TX, &config_tx);