I'm using the CY8CPROTO-062-4343W kit and reading the microphones using the PDM-PCM hardware block. The system works great in 16-bit mode, but when I try to use 24-bit audio I get clicks and pops with strong acoustic signals. My configuration structure is shown below. I have tried 0, 3, and 7 for ckoDiv. I have the same issue with each setting. Has anyone else had issues with the 24-bit audio?
const cy_stc_pdm_pcm_config_t MICS_config =
.clkDiv = CY_PDM_PCM_CLK_DIV_BYPASS,
.mclkDiv = CY_PDM_PCM_CLK_DIV_1_2,
.ckoDiv = 7U,
.ckoDelay = 7U,
.sincDecRate = 32U,
.chanSelect = CY_PDM_PCM_OUT_STEREO,
.chanSwapEnable = false,
.highPassFilterGain = 0U,
.highPassDisable = false,
.softMuteCycles = CY_PDM_PCM_SOFT_MUTE_CYCLES_96,
.softMuteFineGain = 1UL,
.softMuteEnable = false,
.wordLen = CY_PDM_PCM_WLEN_16_BIT,
.signExtension = true,
.gainLeft = CY_PDM_PCM_BYPASS,
.gainRight = CY_PDM_PCM_BYPASS,
.rxFifoTriggerLevel = 4U,
.dmaTriggerEnable = false,
.interruptMask = CY_PDM_PCM_INTR_RX_TRIGGER,
Can you please attach your project so that I can get further insight of the issue.
Also, for 24 bit the .WordLen needs to be changed to CY_PDM_PCM_WLEN_24_BIT
This is probably due to the way you are handling the buffer in the application side. Are you using USB to capture the recording? Or are you recording locally and playing it out to an audio codec?
As Ekta requested, if you can share the project, it will help to narrow down the issue.