MP34DT01 · PDM Microphone

MP34DT01 PDM 数字 MEMS 麦克风模块资料

MP34DT01 / MP34DT01-M 是 ST 的 PDM 数字 MEMS 麦克风。它不是模拟麦克风,也不是 INMP441 / ICS-43434 那种 I2S 麦克风。使用时主控要输出 MHz 级 CLK,并用 PDM 或 I2S-PDM RX 采集,再转成 PCM 音频。

Quick Facts

  • 接口:PDM 数字输出
  • 供电:推荐 3.3V
  • CLK:MHz 级方波
  • SKU:PCB-0668 / 待确认
MP34DT01 PDM MEMS Microphone 麦克风模块产品表记录:PCB-0668,MP34DT01 模块(紫板);正式 SKU 和淘宝链接待确认。
查看客户话术

Key Point

PDM、I2S、模拟麦克风不要混用

客户最容易把 MP34DT01 当 INMP441 / ICS-43434 使用。MP34DT01 的 DATA 是 PDM 单比特高速脉冲,不是 I2S 24-bit 音频数据,也不是模拟电压输出。

PDM I2S 模拟麦克风区别图
对比MP34DT01INMP441 / ICS-43434模拟麦克风
输出类型PDM 高速脉冲I2S 数字音频模拟电压
常见引脚VDD、GND、CLK、DATA、SELVDD、GND、BCLK、WS、SD、LRVCC、GND、AO
是否接 ADC不能直接接不能直接接可以
是否可套 I2S 麦克风代码一般不能可以按 I2S 配置不适用

Wiring

ESP32 / ESP32-S3 PDM 接线思路

不同 ESP32 芯片、ESP-IDF 版本和 Arduino-ESP32 版本对 PDM RX 支持差异较大。接线图先按“PDM RX 思路”整理,具体 GPIO 和代码以后按实测版本补。

MP34DT01 接 ESP32 PDM 接线图
MP34DT01 模块主控说明
VDD / VCC / 3V3.3V不建议接 5V
GNDGND必须共地
CLKPDM CLK 输出脚由主控输出 MHz 级方波
DOUT / DATA / DATPDM DATA 输入脚主控读取 PDM 数据
LR / SELGND 或 3.3V选择左/右声道位置

Compatibility

Arduino / ESP32 使用建议

Arduino UNO / Nano

不建议直接使用。UNO 没有专用 PDM 麦克风接口,不能把 DATA 接到模拟口或用普通 digitalRead 读取 MHz 级 PDM。

支持 PDM 的 Arduino 板

Arduino 官方 PDM 库用于支持 PDM 麦克风的板子,例如 Nano 33 BLE Sense / Nano RP2040 Connect 等。不是所有 Arduino 板都支持。

ESP32 系列

ESP-IDF 文档有 I2S PDM RX 相关说明,但不同芯片和版本支持不同。建议先用官方 ESP-IDF 示例验证,再考虑 Arduino 环境。

Oscilloscope

示波器排查方法

DATA 吹气没明显变化

DATA 不是模拟电压输出。声音变化主要体现在高速 PDM 脉冲密度变化,不是电压慢慢升高或降低。示波器时间档要调到 us/ns 级别。

CLK 怎么给

CLK 应为主控输出到麦克风的 MHz 级 0~3.3V 方波。资料整理中用 2.4MHz 作为排查参考值,正式测试以 datasheet 和主控 PDM 配置为准。

DATA 一直高或低

检查 VDD 是否 3.3V、GND 是否共地、CLK 是否到达麦克风、DATA 是否测对脚、SEL 是否固定到 GND 或 3.3V、程序是否真的开启 PDM RX。

FAQ

常见问题排查

能不能用 INMP441 的代码?

一般不能。INMP441 是 I2S 麦克风,MP34DT01 是 PDM 麦克风,接口时序和数据格式不同。

能不能用 ICS-43434 的代码?

一般不能。ICS-43434 是 I2S 数字麦克风,除非代码明确支持 PDM RX,否则不能直接使用。

为什么采出来全是噪声?

常见原因是用了 I2S 麦克风代码、CLK 频率不对、SEL 与程序声道不一致、DATA 接错、没有共地、没有做 PDM 转 PCM 或下采样参数错误。

能不能接 5V?

不建议。ST 芯片供电按 datasheet 为低压范围,模块推荐 3.3V,CLK 和 SEL 等信号也建议 3.3V 电平。

Customer Reply

淘宝客户简短话术

您好,这款是 MP34DT01 PDM 数字麦克风,不是模拟麦克风,也不是 INMP441 / ICS-43434 那种 I2S 麦克风。DATA 输出的是高速 PDM 脉冲,不能直接接模拟口,也不能直接套 I2S 麦克风程序。

您好,建议 VDD 接 3.3V,GND 共地,CLK 接主控输出的 PDM 时钟,DATA 接主控 PDM 数据输入,SEL 接 GND 或 3.3V 选择声道。CLK 需要 MHz 级方波,不是麦克风自己输出。

您好,Arduino UNO/Nano 不建议直接用这个 PDM 麦克风。它不能像普通声音传感器一样接 A0 读取,需要支持 PDM 采集的主控和 PDM 转 PCM 程序。

References

官方与公开资料