先分清一条输入,一条输出
麦克风把采到的音频送进开发板,功放接收开发板送出的音频再驱动喇叭。I2S 是它们之间使用的数字音频接口。接线表除了数据线,还要安排时钟等信号,收和放才能按同一节奏传输。
如果只看红色和黑色的供电线,很容易漏掉真正决定音频模式的信号线。下面的模式比较只讨论 I2S 连接安排,不讨论你是否买了更大的喇叭或更灵敏的麦克风。
两种方案,重点看是否共用时钟线
官方面包板教程中的 Duplex 用一个 I2S 控制器连接麦克风和功放,共用相关时钟信号;Simplex 分别使用 I2S 0 和 I2S 1,时钟连接分开,多占两个 GPIO。
下面列出所核对版本的信号对照,不包含电源、地线或所有声道选择连接。完整接线仍需查看原表;这张比较表的用途,是帮助辨认你选中了哪种方案。
| 信号 | Simplex 默认配置 | Duplex 配置分支 |
|---|---|---|
| 麦克风 WS / SCK / SD | GPIO4 / GPIO5 / GPIO6 | GPIO4 / GPIO5 / GPIO6 |
| 功放 DIN | GPIO7 | GPIO7 |
| 功放 BCLK / LRC | GPIO15 / GPIO16 | GPIO5 / GPIO4,与麦克风时钟共用 |
选择接线表之前,先确认固件编译了哪一支
所核对版本的 config.h 定义了 AUDIO_I2S_METHOD_SIMPLEX,默认进入 Simplex 分支。文件中也保留了另一种分支,供修改配置重新编译时使用。
看到源码里同时存在两种接线,不表示同一个已经下载的 BIN 会自动识别你接了哪种。使用别人发布的固件时,按发布说明确认;自己编译修改后,也要同步更新接线记录。
- 找到自己板型和版本的配置说明。
- 判断固件使用 Simplex 还是 Duplex,不用另一块板的配置代替。
- 断电后按选定方案核对时钟、数据、电源和地线。
- 保存这次固件和接线表的对应关系,后续排错继续使用同一份。
- 做到这里,你应该看到
- 能明确写出这份 BIN 对应哪种接线,而不只是知道源码里有哪些选项。
Duplex 接线,不等于已经实现随时打断
I2S 的收发连接方式,与“设备说话时能不能同时听到你”不是同一个层次的问题。对话交互还取决于音频处理、回声消除、硬件条件、模型和服务配置。
因此,改成共用时钟并不能单独证明设备有了完整的实时双工对话能力。对新手来说,先让官方默认方案完成稳定的一问一答,再研究 AEC 与实时交互,会更容易分清每次变化的作用。
参考:[1] 官方教程:面包板硬件与接线[2] v2.5.2 面包板 Wi-Fi 引脚与 I2S 配置[3] 项目说明:音频处理与硬件能力条件
资料来源与版本说明
本文属于小智现成固件路线,按文末官方资料与固定源码复核。历史 Q&A 与旧界面仅用于其所注明的版本情境,具体动作再按固定源码与板型核对;当前控制台的登录后界面和实物操作尚未验证。资料核对日期:。资料核对、程序构建与实板测试分别记录,不互相替代。
飞书原文请在浏览器打开;如跳转到登录页,按飞书提示访问。历史截图的原图出处与当前工具入口分别标明。


