STMCU小助手
发布时间:2022-7-10 15:17
|
引言. g0 E7 J1 }+ c3 P+ d 数字MEMS(微机电系统)麦克风专为需要小尺寸、高音质、高可靠性和高经济效益的音频应用而设计。 @" q% T9 J( e) \6 i2 s 它们的封装尺寸小且噪声低,可在单个器件中实现多个麦克风,并通过提供免提人机界面、噪声消除和高质量音频捕获,促进了工业和消费类应用中音频技术的不断发展。 STM32 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)的器件。 1.1 声音采集概述 数字MEMS麦克风是将声压波转换为数字信号的传感器。STM32 MCU和MPU通过特定外设从麦克风采集数字数据,这些数据经过处理并被转换为标准音频数据。然后,由微控制器按照目标音频应用处理音频数据。 \+ A" e; X3 Y; [
1.2 PDM数字麦克风框图 数字麦克风中的主要部件是MEMS传感器、放大器和PDM调制器。
, }7 v$ q6 O* P3 O' S. L2 f- } MEMS传感器 MEMS传感器是一个可变电容,将声波导致的空气压力变化转换为电压。 , 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调制器 PDM调制器将缓冲模拟信号转换为串行脉冲密度调制信号。时钟输入(CLK)用于控制PDM调制器。ST数字麦克风的时钟频率范围在1 MHz至3.25 MHz之间。该频率定义生成离散时间表示(PDM比特流)的放大器模拟输出信号采样频率。 , y c6 a* u" A- V# ? 通道选择 麦克风的输出被驱动至所选时钟边沿上的合适电平,然后进入高阻抗状态并持续另外半个时钟周期。通道选择定义数字麦克风输出有效数据的时钟边沿。LR引脚必须连接到Vdd或GND。 ) p% E1 M3 V5 S9 _) p0 E; ? 表 1显示了如何选择DOUT信号模式。
电源 电源为不同数字麦克风组件供应Vdd和GND。由于任何波动都可能在输出上生成噪声,因此应提供正确的电源。 4 [4 G% ~6 c+ W 引脚说明
a. c* @ s; F- ~ 1.3 基础数字麦克风连接 单声道模式 在该模式下,LR引脚可以连接到Vdd或GND。2 N1 p+ D$ N9 N2 c' a# _% @/ O / j3 g; n. x" m/ b LR引脚连接到Vdd
: h1 [1 K" V! q/ V1 X' H* q
1 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。
# 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 • 位深 采样率是为了以数字方式表示信号,每秒采集的信号样本数。位深决定了每个样本中信息的位数。# F' I9 y; h" e2 }" h
1.4.3 PDM到PCM的转换 为了将PDM流转换为PCM样本,需要对PDM流进行滤波和抽取。 在抽取阶段,PDM信号的采样率降低至目标音频采样率(例如,16 kHz)。通过在每M个样本中选择一个,将采样率降低为1/M。因此,PDM数据频率(麦克风时钟的频率)是应用所需的目标音频采样频率的M倍,其中M为抽取因子。5 |( Z$ A5 [- ?/ [' U! o PDM频率 = 音频采样频率 × 抽取因子抽取因子通常处于48至128的范围之内。 抽取阶段之前有一个低通滤波器,用于避免混叠导致的失真。 ! 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)。 通常使用1 kHz、1 Pa(或94 dBSPL)的音调作为参考信号给出麦克风的灵敏度。; @' H5 s0 e) H 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可提供更高的语音清晰度和远端(免提听筒)可理解性。 2 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 1.6 数字麦克风的附加价值 p9 n7 J, l, _; Z$ M$ m) S : c% N/ X2 s$ p, k% o( m! s
" W7 ]$ a2 z, P: I% J B. U 4 d" x' f1 F4 U 1.7 可用的ST数字麦克风 表 4所示为可用的ST数字麦克风。 & h' c1 }, ~. M6 z
* l, x4 V2 E/ m* N# O% S' h' k 完整版请查看:附件 |
使用STM32 MCU和MPU连接PDM数字麦克风.pdf
下载1.95 MB, 下载次数: 19
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
《MCUBoot课程》学习笔记+从信任链原理到量产实践
Keil-MDK 在线调试设置断点的高级用法
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
基于stm32平台上的IC-MU磁绝对值编码器SPI通讯和码盘数据处理
分享STM32资料-采用 STM32U031R8 MCU 的 STM32 Nucleo-64 开发板,官方资料,数据手册等资料
好用软件推荐-TouchGFX Designer
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
微信公众号
手机版
很有参考价值,尤其是如何接入多个麦克风。