【Arduino】168种传感器模块系列实验(219)--INMP441全向麦克风
2022-07-211.7万
AI 快速预览详细
本文介绍了INMP441全向麦克风模块的实验,该模块通过I2S接口与ESP32连接,实现高精度音频采集。文章详细记录了实验步骤和代码示例,帮助读者轻松完成音频传感器的集成。
|
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程) 实验二百一十九:INMP441全向麦克风模块 I2S接口 MEMS 高精度 低功耗 支持ESP32 ![]() ![]() |






I2S有3个主要信号
1.串行时钟SCLK,也叫位时钟(BCLK),即对应数字音频的每一位数据,SCLK都有1个脉冲。SCLK的频率=2×采样频率×采样位数。
2. 帧时钟LRCK,(也称WS),用于切换左右声道的数据。LRCK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。LRCK的频率等于采样频率。
3.串行数据SDATA,就是用二进制补码表示的音频数据。
有时为了使系统间能够更好地同步,还需要另外传输一个信号MCLK,称为主时钟,也叫系统时钟(Sys Clock),是采样频率的256倍或384倍。
[font="] I2S总线引脚分别是:
BCLK - 位时钟(Bit Clock),由I2S Master Device(I2S主设备)产生,也称为SCLK。对应数字音频的每一位数据,SCLK都有1个脉冲。BCLK的频率 = 2 × 采样频率 × 采样位数
LRCLK - 左右声道选择时钟,LRCK的频率等于采样频率,它输出低电平时,SDOUT和SDIN的数据都为左声道数据,它输出高电平时,SDIN和SDIN的数据都为右声道数据。也称为FS(Frame Select)或WS(Word Select)
GND - 公共接地,为主从设备提供低电平参考
SDOUT - 为PCM数据输出
SDIN - 为PCM数据输入
MCLK - 在某些比较低级的系统中,主设备还提供从设备的执行时钟以确保更好的数据同步,通常为成为主时钟(Master Clock)或系统时钟(System Clock)。它的频率通常是采样频率的256倍或384倍
[/font]
[font="]如果你只需要音频输入或者只需要音频输出,直接少接SDOUT或SDIN就好了。另外输入和输出都共用BCLK时钟线和LRCLK时钟线,所以主时钟由I2S Master Device(I2S主设备)产生就好了。[/font]
[font="][font=-apple-system, BlinkMacSystemFont, "][size=15px]
[/font][/size][/font]
[font="]
[/font]
[/font][/backcolor][/align]
[font="]INMP441是一款高性能,低功耗,数字输出,带底部端口的全向MEMS麦克风。该完整的INMP441解决方案由一个MEMS传感器,信号组成调节,模数转换器,抗混叠滤波器,电源管理和行业标准的24位I²S接口。I²S接口允许INMP441直接连接到数字处理器,如DSP和微控制器,无需使用用于系统中的音频编解码器。INMP441具有高信噪比,是一款出色的选择近场应用。 INMP441具有扁平宽带频率响应,导致自然声音高清晰度。[/font]
[font="]相关技术资料:https://www.findic.tw/doc/browser/bLXpO7wgL?doc_id=8712428#locale=zh-TW[/font]