你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

使用STM32 MCU和MPU连接PDM数字麦克风

[复制链接]
STMCU小助手 发布时间:2022-7-10 15:17
引言. g0 E7 J1 }+ c3 P+ d
数字MEMS(微机电系统)麦克风专为需要小尺寸、高音质、高可靠性和高经济效益的音频应用而设计。  @" q% T9 J( e) \6 i2 s
它们的封装尺寸小且噪声低,可在单个器件中实现多个麦克风,并通过提供免提人机界面、噪声消除和高质量音频捕获,促进了工业和消费类应用中音频技术的不断发展。
7 L4 ]4 m0 h+ Z; S# LSTM32 32位Arm® Cortex® MCU和STM32 Arm® Cortex®MCU提供各种音频功能和丰富的连接功能,包括串行接口和增强型声音捕获接口,使用户能够轻松地为基于麦克风的应用构建解决方案。0 o, P% t# k, I$ j/ T( H! u! ^4 j
本文档针对具有脉冲密度调制(PDM)输出的数字MEMS麦克风,描述了如何在单声道和立体声配置中使用SPI/I2S、SAI和DFSDM外设将麦克风连接到STM32 MCU和MPU。本应用笔记提供指南和基于CubeMX的示例,这些示例展示了如何正确地配置STM32器件,以便采集并处理来自麦克风的原始数据,并将其转换为标准音频数据。9 `* x+ k( ]( A+ r$ o8 ^5 w
8 T6 D6 ~* Q! Q/ M0 m& U4 D
1 PDM数字麦克风概述0 `, ~, n& f4 Q
本章提供PDM数字麦克风的简述和将其与STM32器件相连的基本案例。STM32 MCU和MPU是基于Arm®(a)的器件。
4 g3 F: V* s& b. l* @1.1 声音采集概述
! X- d; v3 j2 q& Y2 o$ K$ T) N数字MEMS麦克风是将声压波转换为数字信号的传感器。STM32 MCU和MPU通过特定外设从麦克风采集数字数据,这些数据经过处理并被转换为标准音频数据。然后,由微控制器按照目标音频应用处理音频数据。
5 v. W; T  \  H# u  \+ A" e; X3 Y; [
B9528EYP[{JO6EM1I$W0[YP.png
( p3 J% c/ _9 q% S& m" s, c
- z9 `* D3 F$ K( R/ E5 A+ }- \; h1.2 PDM数字麦克风框图
/ T; y# E9 S7 P% [' Q# m9 \, c  J2 d7 {数字麦克风中的主要部件是MEMS传感器、放大器和PDM调制器。
1 A+ _7 p9 X1 K# s% ?; p( U
, s1 _% W* i! G! ~/ `8 R. j" l {LS5P~$]_VG9LP9OMK8FCXL.png
  `, }: N( C( S- g4 g
6 N8 j: |/ `0 d, L& w1 @( d, }7 v$ q6 O* P3 O' S. L2 f- }
MEMS传感器
5 n/ _/ P- ^; N/ }. K; L  OMEMS传感器是一个可变电容,将声波导致的空气压力变化转换为电压。
% `  r5 a$ t9 Z7 t4 i7 R, b) g! Q8 o8 o, P/ F3 V
放大器+ {6 _9 I; _1 H! m9 T+ r* U* Q
放大器对MEMS传感器提供的电压进行缓冲,并向PDM调制器提供足够强的信号。! `! Y# w! M7 O4 w" h2 p6 Y
+ a# E! h1 J7 ~8 _1 o2 W
PDM调制器
( x+ C) k8 x( s: k: k& Z) cPDM调制器将缓冲模拟信号转换为串行脉冲密度调制信号。时钟输入(CLK)用于控制PDM调制器。ST数字麦克风的时钟频率范围在1 MHz至3.25 MHz之间。该频率定义生成离散时间表示(PDM比特流)的放大器模拟输出信号采样频率。
* q; W2 l1 W- Y' S% {, y  c6 a* u" A- V# ?
通道选择
3 [) |+ o0 n- S麦克风的输出被驱动至所选时钟边沿上的合适电平,然后进入高阻抗状态并持续另外半个时钟周期。通道选择定义数字麦克风输出有效数据的时钟边沿。LR引脚必须连接到Vdd或GND。 ) p% E1 M3 V5 S9 _) p0 E; ?
表 1显示了如何选择DOUT信号模式。
5 p! x1 Z  Y" D- E6 `, \6 [
) _2 v  D3 {2 z( l! q6 I [8(PLL5TX%EXAB`ZIHLUIR7.png
, h* ]$ c) N5 n4 t/ y9 M; ~' \
/ D9 O' M: t$ f: R  ~+ f( R电源
9 V( W. c$ R0 @, k; {  M电源为不同数字麦克风组件供应Vdd和GND。由于任何波动都可能在输出上生成噪声,因此应提供正确的电源。
3 n# J8 ]* A9 @4 y. x" N
7 x! P) L) @0 i0 S$ f4 [4 G% ~6 c+ W
引脚说明
* M* K2 |- R9 B4 S: D9 s. z' @
$ N9 W% @9 d5 G& H2 n$ ~ AOUHJU0GEIE0UVH5ZW%{3.png
  Q* f4 w- A1 e  a. c* @  s; F- ~
1.3 基础数字麦克风连接
( _9 C- \5 H: m单声道模式
' m) x7 u- M5 Z在该模式下,LR引脚可以连接到Vdd或GND。2 N1 p+ D$ N9 N2 c' a# _% @/ O
/ j3 g; n. x" m/ b
LR引脚连接到Vdd
, Y2 m" z8 L4 h3 m" L8 H2 f
6 E+ v$ L/ k1 X9 x4 E9 }% U Y9HL~]RLN1[`~6@$$J(GVOX.png 8 u. Y6 D! Z4 u1 C# Y2 S

, T! b# G, x- Y C~0IBOS13K`WC8)V~A0FT5J.png
6 k8 y8 E& D9 I6 K: h. s
) Y+ ~/ E, f1 y/ x V~J@PUT~}~N5FCE3SMMV3GR.png & h- c3 H( L2 S" A) v3 g
: h1 [1 K" V! q/ V1 X' H* q
}9H0297@)(TO{U3P{6`5G%E.png
9 A! L. Q( G' Q. i1 X/ l- G
8 [% s8 K2 o6 {) i* d `NA}@$TP6SH[9(WTB~YJ(OL.png
: T4 o- K+ ^  R2 m* s6 _8 \) V1 K/ W- ]- s7 A  Y
1.4 PDM和PCM信号" {; ]- Q1 B$ M2 Z- [, |  g  J
1.4.1 脉冲密度调制(PDM)! [" ^1 ]0 a+ q! C. j
PDM是一种调制形式,用于表示数字域中的模拟信号。它是1位数字采样的高频数据流。在PDM信号中,脉冲的相对密度对应于模拟信号的幅度。大量的'1'对应于高(正)幅度值,而大量的'0'对应于低(负)幅度值,交替的'1'和'0'对应于幅度值0。
( s/ p- J) \3 B& T4 l* {1 t
5 D8 i# p$ h) W$ p `7H0KVDVPM77QS7@QVO4[{X.png 9 y- P$ {8 F1 U" I
# a+ L) }. r8 F6 c  w7 l- p5 O3 }
1.4.2 脉冲编码调制(PCM) 8 e& E2 n3 a% i; C0 e! G, Z
在PCM信号中,具体的幅度值被编码为脉冲。- z% K/ v; t& a" P3 ]
PCM流有两个基本属性,它们决定了流相对于原始模拟信号的保真度:& Y! s, U1 h; x
• 采样率# D" T. ?' S; G  t7 U; Z
• 位深
- K9 S+ U( f2 N; l5 y3 p采样率是为了以数字方式表示信号,每秒采集的信号样本数。位深决定了每个样本中信息的位数。# F' I9 y; h" e2 }" h

1 L" r( J5 r) o ~LR@5CZ29E{MKM5}E33QKND.png
$ s4 n8 D2 }  S3 M  |( G6 g
/ k. S/ i, p6 ~$ A8 ~1.4.3 PDM到PCM的转换
9 Q+ B% ~" ~1 X7 X为了将PDM流转换为PCM样本,需要对PDM流进行滤波和抽取。
5 R& E7 C% j7 G' e6 J在抽取阶段,PDM信号的采样率降低至目标音频采样率(例如,16 kHz)。通过在每M个样本中选择一个,将采样率降低为1/M。因此,PDM数据频率(麦克风时钟的频率)是应用所需的目标音频采样频率的M倍,其中M为抽取因子。5 |( Z$ A5 [- ?/ [' U! o
PDM频率 = 音频采样频率 × 抽取因子抽取因子通常处于48至128的范围之内。
+ K: E- Y9 |. B& {抽取阶段之前有一个低通滤波器,用于避免混叠导致的失真。
2 s1 z  ~" }" ?/ s# |! B9 \  A& p, n  T
1.5 声学参数9 E% Q7 @3 {2 K7 Z4 K: P
1.5.1 灵敏度" E+ q) e2 V  o! T7 ], D# i2 p$ k
灵敏度是数字麦克风就给定声学参考信号输出的电信号的电平(单位为dBFS)。
: d# h" I/ M+ u9 i8 D) v7 y通常使用1 kHz、1 Pa(或94 dBSPL)的音调作为参考信号给出麦克风的灵敏度。; @' H5 s0 e) H

7 U4 b+ m/ R" p8 Y; u: I4 \, J8 D6 F' |1.5.2 信噪比(SNR)2 a* E( c( R, J; }" A' X5 C7 ]
SNR表示在麦克风输出处,参考信号(94 dBSPL@1kHz)与残余噪声量之比。( @. N0 j, V' w! |' {: t( h4 \9 Z
更高SNR可提供更高的语音清晰度和远端(免提听筒)可理解性。
1 I" C$ {# M* x2 N6 U; d# ]/ e) ^  t
1.5.3 声学过载点(AOP)  k: `1 V: I5 f
AOP是麦克风在失真可接受的情况下能够捕获的最大声学信号(一些规范允许声学过载点有最多10%的失真)。1 d' V+ I9 y" k5 K5 D$ ^7 B
/ h9 B. Y; H8 u) g
1.5.4 电源抑制比(PSRR)* D7 m& c! i" o7 f6 W* L$ w8 j
PSRR参数量化了麦克风对电源变化所产生的噪声的抑制能力。  v3 e* I! M1 k4 V

( A- v1 `* j% h$ i; c$ H3 N1.6 数字麦克风的附加价值  p9 n7 J, l, _; Z$ M$ m) S
: c% N/ X2 s$ p, k% o( m! s
%OW)(O0@58YM`{KHMJWTP37.png ) e/ @7 Z9 c& U  Y3 c9 i$ T
" W7 ]$ a2 z, P: I% J  B. U
4 d" x' f1 F4 U
1.7 可用的ST数字麦克风
* k( n' K; c% Q表 4所示为可用的ST数字麦克风。
. K  K4 ?2 S: r  H* A( b& h' c1 }, ~. M6 z
VU}628ZME}Z{Q$F{EG)J}(2.png
1 c8 @7 e* g/ G. y) G# O4 T* l, x4 V2 E/ m* N# O% S' h' k
完整版请查看:附件
( ~% Z% G6 X# ~
J`4K]2EQ[~V`%]$~FK49IBM.png

使用STM32 MCU和MPU连接PDM数字麦克风.pdf

下载

1.95 MB, 下载次数: 19

收藏 评论1 发布时间:2022-7-10 15:17

举报

1个回答
zxq0521 回答时间:2026-7-2 10:58:22

很有参考价值,尤其是如何接入多个麦克风。

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版