esp32s3下i2s开发记录

esp32s3下i2s开发记录

关键词:esp32s3,platformIO,i2s,inmp441,max98357

引言

本文将鄙人在使用esp32s3开发inmp441和max98357并用其进行收音和放音实验的重点作记录。

一,介绍

1. 硬件模块介绍

(1) esp32s3

​ ESP32-S3 是一款低功耗的 MCU 系统级芯片 (SoC),支持 2.4 GHz Wi-Fi 和低功耗蓝牙 (Bluetooth® LE) 无线通信。芯片集成了高性能的 Xtensa® 32 位 LX7 双核处理器、超低功耗协处理器、Wi-Fi 基带、蓝牙基带、RF 模块以及外设。拥有2个i2s接口。

(2)inmp441

​ INMP441是一款高性能,低功耗,数字输出,带底部端口的全向MEMS麦克风。该完整的INMP441解决方案由一个MEMS传感器,信号组成调节,模数转换器,抗混叠滤波器,电源管理和行业标准的24位I²S接口。I²S接口允许INMP441直接连接到数字处理器,如DSP和微控制器,无需使用用于系统中的音频编解码器。INMP441具有高信噪比,是一款出色的选择近场应用。

接口定义:

SCK I²S接口的串行数据时钟
WS 用于I²S接口的串行数据字选择
L/R 左/右声道选择。(设置为低电平时,麦克风在I²S帧的左声道输出信号;设置为高电平时,麦克风在右声道输出信号)
SD I²S接口的串行数据输出。
VCC 输入电源DC1.8V至3.3V.
GND 电源地
(3)max98357

​ MAX98357A/MAX98357B是数字脉冲编码调制(PCM)输入D类功率放大器,可提供AB类音频性能,同时具有D类的效率。器件在I2S/左对齐模式下通过单个增益设置输入可提供5中可选择增益(3dB、6dB、9dB、12dB、15dB),在TDM模式下为固定12dB增益。
​ 数字音频接口高度灵活,MAX98357A支持I²S数据,MAX98357B支持左对齐数据。两种器件均支持8通道时分复用(TDM)数据。对于所有支持的数据格式,数字音频接口可接收8KHz至96KHz的指定采样速率。IC通过配置可将立体声输入数据转换成左声道、右声道、(左声道/2 + 右声道/2)输出。对于I2S和左对齐模式,IC采用16/24/32位数据工作,对于TDM模式,器件采用16位或32位数据工作。IC无需PCM通讯应用中的外部MCLK信号。这有助于减小EMI以及电路板的耦合问题,另外,也可减小电路板尺寸以及IC引脚数。
​ IC在BCLK和LRCLK上具有很高的宽带抖动容限(12ns典型值),能够可靠工作。
有源辐射抑制、边沿速率限制以及过冲控制电路大大减小EMI。无需滤波的扩谱调制机制可省去传统D类器件中的输出滤波器件,可减少方案中的器件数量。
IC采用9引脚WLP (1.345mm x 1.435mm x 0.64mm)和16引脚TQFN (3mm x 3mm x 0.75mm)封装,工作在-40°C至+85°C温度范围。

(不清楚MAX98357A/MAX98357B/MAX98357是什么关系,只找到了MAX98357A/MAX98357B的数据手册,不过应该没多大差别)

MAX98357模块,图片来自网络

接口定义:

VCC 输入电源DC2.5V至5.5V.
GND 电源地
SD 关机和频道选择
GAIN 增益和频道选择
DIN 数字输入信号
BCLK I²S接口的串行数据输出
LRC I2S与LJ模式的左/右时钟。同步时钟用于TDM模式

2. 平台介绍

platformIO

二、实施

1. 硬件部分

(1)inmp441的连线为
inmp441 esp32s3
SCK GPIO7
WS GPIO6
L/R GPIO4
SD \
VCC 3.3V
GND GND
(2)max98357的连线为
max98357 esp32s3
VCC 3.3V
GND GND
SD \
GAIN \
DIN GPIO18
BCLK GPIO17
LRC GPIO16

2. 软件部分

代码

<
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值