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

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

[复制链接]
STMCU小助手 发布时间:2022-7-10 15:17
引言
7 y, e% w6 k: U% O9 r8 }7 L数字MEMS(微机电系统)麦克风专为需要小尺寸、高音质、高可靠性和高经济效益的音频应用而设计。6 ~# O0 K6 |, A% f
它们的封装尺寸小且噪声低,可在单个器件中实现多个麦克风,并通过提供免提人机界面、噪声消除和高质量音频捕获,促进了工业和消费类应用中音频技术的不断发展。
; z5 J# m& f4 I; o9 I  `0 i6 Z; tSTM32 32位Arm® Cortex® MCU和STM32 Arm® Cortex®MCU提供各种音频功能和丰富的连接功能,包括串行接口和增强型声音捕获接口,使用户能够轻松地为基于麦克风的应用构建解决方案。1 Q. j/ s' k$ J, g2 U! u
本文档针对具有脉冲密度调制(PDM)输出的数字MEMS麦克风,描述了如何在单声道和立体声配置中使用SPI/I2S、SAI和DFSDM外设将麦克风连接到STM32 MCU和MPU。本应用笔记提供指南和基于CubeMX的示例,这些示例展示了如何正确地配置STM32器件,以便采集并处理来自麦克风的原始数据,并将其转换为标准音频数据。
( C$ I0 U, @; _" ]3 S+ U
! b7 v/ G  X4 b1 \& W1 PDM数字麦克风概述
% B. B, s; n9 L本章提供PDM数字麦克风的简述和将其与STM32器件相连的基本案例。STM32 MCU和MPU是基于Arm®(a)的器件。* }  z+ n- I, @
1.1 声音采集概述
1 H* g4 @' ]6 d) l数字MEMS麦克风是将声压波转换为数字信号的传感器。STM32 MCU和MPU通过特定外设从麦克风采集数字数据,这些数据经过处理并被转换为标准音频数据。然后,由微控制器按照目标音频应用处理音频数据。3 {8 u( J' T8 ^$ p* N- F4 T
5 r# e# T' G+ Z. D# G; q6 [
B9528EYP[{JO6EM1I$W0[YP.png
6 k" F: j2 Q+ ~2 E1 P) r% S6 z1 Z! n
1.2 PDM数字麦克风框图
$ ]7 u3 _7 ~# a& m# e9 X6 j. }. n数字麦克风中的主要部件是MEMS传感器、放大器和PDM调制器。. r! R. E( z% b5 n# C2 ^
$ T) o- H% s" s5 M! Y
{LS5P~$]_VG9LP9OMK8FCXL.png
$ l; k7 I/ k, K/ E
  h7 G: p# A2 f7 k6 w1 q& b, r4 b. K2 B
MEMS传感器
6 L; e( ]" ?6 B& Q% D  ?: X. xMEMS传感器是一个可变电容,将声波导致的空气压力变化转换为电压。0 P! O3 \6 v2 X1 S1 a! Q1 I) O

2 i& Y1 f+ _' _( P& `% }) G, Z, l放大器
" T- O" b8 d; i0 G, z, k放大器对MEMS传感器提供的电压进行缓冲,并向PDM调制器提供足够强的信号。# o: p4 w2 o8 H' c  F" R

0 q; ?1 x' k- W- N2 g7 S7 G2 WPDM调制器( Z3 |8 ~! ?8 U( D$ S' H& |* C+ F
PDM调制器将缓冲模拟信号转换为串行脉冲密度调制信号。时钟输入(CLK)用于控制PDM调制器。ST数字麦克风的时钟频率范围在1 MHz至3.25 MHz之间。该频率定义生成离散时间表示(PDM比特流)的放大器模拟输出信号采样频率。5 V9 q. E" E0 }3 r, h3 V  |

9 {% Q4 J4 l4 E6 O; q  k. H通道选择: x; T8 _% O0 D. n
麦克风的输出被驱动至所选时钟边沿上的合适电平,然后进入高阻抗状态并持续另外半个时钟周期。通道选择定义数字麦克风输出有效数据的时钟边沿。LR引脚必须连接到Vdd或GND。
9 d6 w. Y  i& ?* K7 J, n表 1显示了如何选择DOUT信号模式。
1 [. y& ^6 C5 E+ }$ B# F& h
" P" P4 d0 h- D8 \ [8(PLL5TX%EXAB`ZIHLUIR7.png
8 W' B$ O0 k& G  q" ]6 ~% ?4 r& o7 C3 |
电源5 }  H' k* q! B0 U
电源为不同数字麦克风组件供应Vdd和GND。由于任何波动都可能在输出上生成噪声,因此应提供正确的电源。) j6 [- [& g7 y

' o& G) I9 p! `; B( {6 S' o7 \* V8 z7 }+ E
引脚说明" `. Q! {+ w) y& G) D6 }

+ R1 \2 g0 T/ G AOUHJU0GEIE0UVH5ZW%{3.png
- v/ V! `9 K/ @' N5 y3 s( f. Q
1 h1 J) n! ]3 q& H4 Z1.3 基础数字麦克风连接
, X3 _- I! B/ @: L单声道模式! C6 e! w0 {# B- l; ]) F
在该模式下,LR引脚可以连接到Vdd或GND。0 \( ~  ]6 R6 Z4 P

% h; K- ~, n6 ~: t5 m+ X6 V( JLR引脚连接到Vdd% B' D' N, j% |5 f; m
* f0 s, U8 F+ b
Y9HL~]RLN1[`~6@$$J(GVOX.png
: w5 m1 q7 @8 p& m+ _! b
* ]+ Z9 e- ~# k" _# i C~0IBOS13K`WC8)V~A0FT5J.png
- O, u! N+ P" Y* Q6 i6 i
9 D4 k" L. ]9 |$ t* T. T7 | V~J@PUT~}~N5FCE3SMMV3GR.png : F6 k! b" T% A

% G) i! x  e. t  c5 N }9H0297@)(TO{U3P{6`5G%E.png
- }. u, X" p- @9 p( ~: g5 g9 z# N, Z. k$ i: I- N
`NA}@$TP6SH[9(WTB~YJ(OL.png
' E* }; m+ M5 T8 ^, y
: m4 l8 v' \6 k1.4 PDM和PCM信号
% g( n+ _' t# l0 |1.4.1 脉冲密度调制(PDM)6 x2 l, K% G# M8 l+ b
PDM是一种调制形式,用于表示数字域中的模拟信号。它是1位数字采样的高频数据流。在PDM信号中,脉冲的相对密度对应于模拟信号的幅度。大量的'1'对应于高(正)幅度值,而大量的'0'对应于低(负)幅度值,交替的'1'和'0'对应于幅度值0。
5 S1 y/ P% i/ k7 ]3 R9 t) u1 [6 i
' }6 |. g" O' o" T6 m `7H0KVDVPM77QS7@QVO4[{X.png
. ^, q1 k8 v" t6 |7 N' x6 o1 x7 W. }3 ^5 N. o
1.4.2 脉冲编码调制(PCM) + h1 M2 J; Y* W4 A
在PCM信号中,具体的幅度值被编码为脉冲。
7 z, s# T* J) r+ NPCM流有两个基本属性,它们决定了流相对于原始模拟信号的保真度:/ S) J) N9 R/ B8 I( H% V2 X' ?
• 采样率
: q9 x, p+ q" l$ F  `: S: Q8 C+ A# r  n• 位深! H2 E% l) A9 F* Q; S1 |0 k! l8 D) ^
采样率是为了以数字方式表示信号,每秒采集的信号样本数。位深决定了每个样本中信息的位数。5 N5 D& ?, w- Y1 t3 {' m6 c1 ?; ]0 U

$ ^0 I5 `- \, M6 D, p: k! ` ~LR@5CZ29E{MKM5}E33QKND.png
# k/ O% w3 L/ t* }
& M' {! n3 i& Y7 A$ T1.4.3 PDM到PCM的转换: G! F; H# O2 A1 g
为了将PDM流转换为PCM样本,需要对PDM流进行滤波和抽取。
& O# ^( ^4 Z  r( `* ?4 @+ W( n在抽取阶段,PDM信号的采样率降低至目标音频采样率(例如,16 kHz)。通过在每M个样本中选择一个,将采样率降低为1/M。因此,PDM数据频率(麦克风时钟的频率)是应用所需的目标音频采样频率的M倍,其中M为抽取因子。. t' i$ Z$ H7 h) N9 t& T
PDM频率 = 音频采样频率 × 抽取因子抽取因子通常处于48至128的范围之内。# G, ^! V4 O+ A2 Z
抽取阶段之前有一个低通滤波器,用于避免混叠导致的失真。
. [3 Z. P2 a5 O0 o8 p# d7 C1 F3 b1 a' a6 u# D9 a, D# S" A5 Z
1.5 声学参数( f* c3 `0 [& M/ _- b& `. y
1.5.1 灵敏度
" s0 k! G! ~) n+ Y6 I8 w1 ?灵敏度是数字麦克风就给定声学参考信号输出的电信号的电平(单位为dBFS)。2 E9 g1 H+ e: S- C+ Z$ j- n
通常使用1 kHz、1 Pa(或94 dBSPL)的音调作为参考信号给出麦克风的灵敏度。+ y- E7 v5 e# q0 `2 b1 D" k

" ^3 F8 k3 o7 W" I) Y# W1.5.2 信噪比(SNR)
' W$ S% x/ O2 I7 a- |, cSNR表示在麦克风输出处,参考信号(94 dBSPL@1kHz)与残余噪声量之比。
; ~$ r$ `+ x) T- I更高SNR可提供更高的语音清晰度和远端(免提听筒)可理解性。
% B3 B. Y3 w' |8 a9 c0 S, \; `1 L/ r! q2 a% ?
1.5.3 声学过载点(AOP); |$ {" q0 x* Z4 L7 E
AOP是麦克风在失真可接受的情况下能够捕获的最大声学信号(一些规范允许声学过载点有最多10%的失真)。
/ K6 v/ a  v! w  m; L  H: A0 u3 k/ R; `7 t' U
1.5.4 电源抑制比(PSRR)
* o+ s8 h1 x8 o0 b7 wPSRR参数量化了麦克风对电源变化所产生的噪声的抑制能力。2 `7 Q: m' ^- w* H& F: [. g. u2 T% i, x

, x' ^: a1 F1 U1 i1.6 数字麦克风的附加价值4 c* h. k% P# @/ M

$ ]( S4 Z. D9 H5 B+ ?& v %OW)(O0@58YM`{KHMJWTP37.png
4 l$ S, r' Q& _( D
* J) D: K% Q8 b  s
- |% t7 B. V6 l0 Y+ p3 B1.7 可用的ST数字麦克风* X/ `' O, Z, _% W$ N
表 4所示为可用的ST数字麦克风。
. S3 b0 N  c! D' @
+ `2 C. q, T0 [3 X" k& F VU}628ZME}Z{Q$F{EG)J}(2.png
3 ]1 [6 u( j0 ?: V) o+ u3 ]
9 a: K% j7 D/ B1 z4 |$ ?/ `6 j1 Z完整版请查看:附件
- b; j' m2 p+ X6 Y6 I- Z1 I6 |
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管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版