概述
Using the PSoC6 PDM to PCM converter to convert data input from two digital MEMS microphones in PDM format to 16 bit PCM. The PDM clock is determined by dividing a high frequency clock (16307.692kHz) by 8 = 2038.46kHz, which is further divided by 64 to determine the PCM sampling rate = 31.85kHz. This PCM data is then downsampled by a factor of 4, and written to the I2S TX_FIFO where 16 bit words are output at a frame rate of 7.963kHz. More specifically, two separate DMA transfers are used to transfer data output by the PDM to PCM converter to an audio buffer, and from the audio buffer to the I2S TX_FIFO. When I listen to the I2S audio output, it is as expected for the first 1-2 minutes after program execution, but then I hear static, indicating that data is being read from the audio buffer faster than it is being written to. This problem does not occur if there is no downsampling and the same value is used for the PCM sampling rate and I2S frame rate. Any suggestions on how to ensure correct synchronization of the PDM to PCM converted data and I2S audio output when the data is downsampled first?
最后
以上就是优美手套为你收集整理的matlab pdm转pcm_Solved: PDM to PCM conversion and I2S audio output - Cypress Developer Community的全部内容,希望文章能够帮你解决matlab pdm转pcm_Solved: PDM to PCM conversion and I2S audio output - Cypress Developer Community所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复