2021-03-04 10:49 AM
Hello,
I have a PDM MEMS microphone that I am reading in via I2S. The following parameters are set.
I2S config
-----------------
Master Mode Receiver
MSB First
24 Bits Data on 32 Bits Frame
48KHz Sample rate
The PDM 2 PCM settings are as follows
PDM2PCM
------------------
PDM Filt order MSB
Endianness BE
1 input channel
1 output channel
Decimation factor 64
Output samples 16
With these parameters I would expect a PDM clock rate of 3.072Mhz @ 48Khz PCM sample rate.
I am measuring 3.135Mhz on my PDM clock, and I am also receiving results that are slightly off frequency.
Does anyone have any idea why this would happen? I am using I2S3 on the STM32F401RE nucelo board.
Thanks for any ideas and help.
2021-03-09 03:50 AM
Hi @kcire L. ,
Since it is an issue related to the PDM clock generation, i.e. the PDM clock master from the I2S peripheral, I've added the STM32F4 topic for more help from the STM32 community.
I would check if the clock tree has been properly configured... Did you used the CubeMX for the peripheral settings or did you started from a custom project? And did you try to use another I2S peripheral?
-Eleon
2021-03-09 05:30 AM
I did use the CubeMX to setup the peripherals, but I have not tried another I2S yet...
Thanks for the response.