使用树莓派5通过 MAX98357 I²S 音频模块外接扬声器,以及通过 INMP441 I²S 模块外接麦克风。
一、扬声器
1. 硬件连接
接线表
| MAX98357A 模块 | 树莓派 5 GPIO | 说明 |
|---|---|---|
| VIN | Pin 2 (5V) | 电源 5V |
| GND | Pin 6 或 Pin 39 | 地线 |
| SD / MUTE | Pin 4 (5V) | 电源 5V |
| GAIN | 可不接,默认 3W 输出 | 可接到 3.3V 或 GND 改变增益 |
| DIN | Pin 40 (GPIO21 / PCM_DOUT) | I²S 数据输出 |
| BCLK | Pin 12 (GPIO18 / PCM_CLK) | 位时钟 |
| LRC / LRCLK | Pin 35 (GPIO19 / PCM_FS) | 左右声道同步 |
📌 引脚参考:树莓派5引脚图
2. 软件配置步骤(Raspberry Pi OS)
1. 启用 I²S 接口
打开终端执行:
1 | sudo raspi-config |
进入以下路径:
1 | Interface Options → I2S → Enable |
2. 修改配置文件
编辑 /boot/config.txt:
1 | sudo vi /boot/config.txt |
添加以下行:
1 | dtoverlay=hifiberry-dac |
3. 重启系统
1 | sudo reboot |
4. 测试音频输出
重启后,使用 aplay 查看音频设备列表:
1 | aplay -l |
确认系统检测到 I²S 声卡(通常显示为 snd_rpi_hifiberry_dac)。
播放测试音频:
1 | aplay /usr/share/sounds/alsa/Front_Center.wav |
如果听到声音,说明配置成功!
5. 设置音量大小
使用 wpctl 命令管理音量:
1 | # 查看所有音频设备 |
二、麦克风
1. 硬件连接
接线表
| INMP441 模块 | 树莓派 5 GPIO | 说明 |
|---|---|---|
| VDD | Pin 1 或 17 | 电源(必须 3.3V,勿接 5V) |
| GND | Pin 6 或 9 等 | 地线 |
| SCK / BCLK | Pin 12 GPIO18 (PCM_CLK) | I²S 比特时钟 |
| WS / L/RCLK | Pin 35 GPIO19 (PCM_FS) | I²S 帧时钟 |
| SD / DOUT | Pin 38 GPIO20 (PCM_DIN) | I²S 输入数据(Mic → Pi) |
| L/R | 接 GND = 左声道、接 VDD = 右声道 | 左右声道选择(可选) |
📌 引脚参考:树莓派5引脚图
⚠️ 重要提示:
- INMP441 的 VDD 引脚必须接 3.3V,不能接 5V,否则会损坏模块
- 确保所有连接牢固,避免接触不良导致的问题
2. 软件配置步骤(Raspberry Pi OS)
📌 注意:如果已在扬声器部分启用了 I²S 接口,可跳过步骤 1。
1. 启用 I²S 接口
打开终端执行:
1 | sudo raspi-config |
进入以下路径:
1 | Interface Options → I2S → Enable |
2. 修改配置文件
编辑 /boot/config.txt:
1 | sudo vi /boot/config.txt |
添加以下行:
1 | dtparam=i2s=on |
3. 重启系统
1 | sudo reboot |
4. 测试音频输入
重启后,使用 arecord 查看音频输入设备列表:
1 | arecord -l |
确认系统检测到 I²S 麦克风设备。
录制 5 秒音频到 test.wav:
1 | arecord -D plughw:2,0 -f cd -t wav -d 5 test.wav |
📌 提示:如果设备编号不是
plughw:2,0,请根据arecord -l的输出结果调整。
播放录音验证:
1 | aplay test.wav |
如果能够正常录制和播放,说明配置成功!