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


#define SLAB_BUFFER_SIZE         (832 * 16) // 13 312 байт (около 13 КБ)

/* Сдвигаем буферы в самый конец памяти DTCM, с выравниванием по границам банков (32 КБ) */
/* Банк 4 (последний): 0x20020000 - 0x20027FFF (32 КБ) */
#define AUDIO_RX_PHYS_ADDR       0x20020000  
#define AUDIO_TX_PHYS_ADDR       0x20023400  // Смещение на 13312 байт с выравниванием

struct k_mem_slab mem_slab_rx;
struct k_mem_slab mem_slab_tx;

void init_audio_buffers(void) {
    uint8_t *rx_buffer = (uint8_t *)AUDIO_RX_PHYS_ADDR;
    uint8_t *tx_buffer = (uint8_t *)AUDIO_TX_PHYS_ADDR;

    k_mem_slab_init(&mem_slab_rx, rx_buffer, 832, 16);
    k_mem_slab_init(&mem_slab_tx, tx_buffer, 832, 16);
}