项目简介
本项目名为BTPlayer,是基于ESP32 MCU和ESP-IDF框架实现的蓝牙音频播放器。它支持蓝牙音频流传输(A2DP)和Secure Simple Pairing过程,主要功能是播放蓝牙音频,并通过I2S接口输出音频数据。
项目的主要特性和功能
- 支持ESP32开发板与立体声I2S DAC(如UDA1334A)连接。
- 利用ESP-IDF框架实现蓝牙通信,支持蓝牙音频流传输协议(A2DP)。
- 具备简单的嵌入式控制台应用,便于调试和配置。
- 支持通过控制台命令进行蓝牙配对操作。
安装使用步骤
前提条件
准备好一个ESP32开发板(如DevKit - C)和立体声I2S DAC模块(如UDA1334A)。
复制项目代码
bash
构建项目
进入mc_btplayer目录,执行以下命令:
bash
idf.py build
闪存项目
使用ESP-IDF提供的工具进行烧录:
bash
idf.py flash
硬件设置
按照以下对应关系连接ESP32和I2S DAC: | ESP32 | I2S DAC | | ---- | ---- | | GPIO25 | WS (WORD SELECT) | | GPIO26 | I2S DATA | | GPIO27 | BCLK (BIT CLOCK) |
注:GPIO可通过idf.py menuconfig
进行配置。
蓝牙配对
采用标准的Secure Simple Pairing过程(含Man In The Middle保护),需进行数值比较: 1. 连接设备(如智能手机)向BTPlayer发送一个数字。 2. BTPlayer通过音频DAC(如耳机或扬声器)将数值告知用户。 3. 若BTPlayer告知的数值与智能手机显示的数值匹配,用户可接受配对。
音频播放测试
完成配对后,BTPlayer将开始播放通过蓝牙传输的音频流。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】