3

I have a PDM-Mems Microphone which provides me with 101010 data, the Microphone has a Clock of 3Mhz. I read the manual about how PDM is generated, but I haven't worked with digital filters yet and in the manual only stands to use a Low-Pass. But I can't find a formula for a digital Low-Pass filter.

My question is how can I perform a digital Low-Pass with the PDM-Output data?

Microphone: https://learn.adafruit.com/adafruit-pdm-microphone-breakout?view=all

Niteesh Shanbog
  • 711
  • 7
  • 21
FoldFence
  • 133
  • 5
  • 1
    You don't need a digital low pass. You either need a counter (processing on the digital side) or you need an analog filter (to convert PDM to a voltage). – Marcus Müller Apr 29 '19 at 08:28
  • The PDM-Signal is later used for a Speech-processing Neural Network, what do you mean with a Counter ? Like a sort of Counting algorithm and calculate the mean of the windows? – FoldFence Apr 29 '19 at 08:33
  • I'd just count the pulses within a given time. Many microcontroller have units that can do that for you, so that you just have to query a register every so and so many microseconds. – Marcus Müller Apr 29 '19 at 08:48
  • Ah ok, so I first must have a look on the windowing and later then average each window and look at the differences to the first window if I understand it correctly. Thanks for your help =) – FoldFence Apr 29 '19 at 09:14
  • Related question: https://electronics.stackexchange.com/questions/404393/how-to-interface-to-a-pdm-audio-source?rq=1 – Jon Nordby Jun 04 '23 at 21:05

1 Answers1

1

To interface a microcontroller with a PDM microphone, there are generally 3 options. In preferred order, they are:

  1. Use a digital audio input peripheral of the microcontroller with PDM support. A modern microcontroller such as STM32L4, STM32F4, Nordic NRF52, ESP32 et.c. have these. Usually they will do the necessary conversion to PCM audio samples for you.
  2. Use a PDM to I2S/TDM conversion chip, and then use a I2S/TDM audio pheripheral of the microcontroller. One example for such a chip would be Analog Devices ADAU7002
  3. Use an analog low-pass filter to convert the PDM stream into an audio-rate analog signal. And then use the ADC input at audio sampling rates (16-48 kHz typical).
Jon Nordby
  • 231
  • 1
  • 6