Загрузка данных


/* Конфигурация для Записи (SGTL5000) */
#define SAMPLE_FREQ_RX       16000  /* Кодек пишет на частоте 16 кГц */

/* Конфигурация для Воспроизведения (TFA9882) */
#define SAMPLE_FREQ_TX       32000  /* Усилитель воспроизводит на частоте 32 кГц (FS >= 32kHz) */

#define SAMPLE_BIT_WIDTH    16
#define BYTES_PER_SAMPLE    sizeof(int16_t)
#define NUMBER_OF_CHANNELS  2

/* Буферы для RX (16 кГц) и TX (32 кГц) будут иметь разный размер! */
#define SAMPLES_PER_BLOCK_RX   ((SAMPLE_FREQ_RX / 10) * NUMBER_OF_CHANNELS)
#define SAMPLES_PER_BLOCK_TX   ((SAMPLE_FREQ_TX / 10) * NUMBER_OF_CHANNELS)

#define BLOCK_SIZE_RX  (BYTES_PER_SAMPLE * SAMPLES_PER_BLOCK_RX)
#define BLOCK_SIZE_TX  (BYTES_PER_SAMPLE * SAMPLES_PER_BLOCK_TX)

/* Создаем две разные slab-памяти под разные размеры блоков */
K_MEM_SLAB_DEFINE_STATIC(mem_slab_rx, BLOCK_SIZE_RX, 6, 4);
K_MEM_SLAB_DEFINE_STATIC(mem_slab_tx, BLOCK_SIZE_TX, 6, 4);