BLE 对讲示例

源码路径:example/ble/talkback

支持的平台

  • sf32lb52-lchspi-ulp

  • sf32lb52-nano系列

  • sf32lb52-lcd系列

  • sf32lb56-lcd系列

  • sf32lb58-lcd系列

概述

  1. 本例程演示了本平台如何实现基于BLE的语音对讲功能。

  2. 该示例利用BLE 5.0的周期性广播(Periodic Advertising)和周期性广播同步(Periodic Advertising Sync)特性,实现了低功耗、低延迟的无线对讲功能。

  3. 支持多设备组网,最多可同时连接3个设备进行对讲。

  4. 使用Opus音频编解码技术,保证高质量的语音传输。

例程的使用

  1. 本例程开机后会自动开启扫描,寻找周围的对讲设备,并建立连接。

  2. 同时也会开启广播,使其他设备能够发现本设备。

  3. 点击开发板上的 KEY1 按键(对应开发板片上的丝印)开始讲话,再次点击 KEY1 结束讲话。

  4. 当其他设备讲话时,本设备会自动播放对方的语音。

  5. 支持通过Finsh命令查看和调试系统状态。

硬件需求

运行该例程前,需要准备:

  • 一块本例程支持的开发板

  • 至少两块开发板进行对讲测试。

  • 音频输入输出设备(麦克风和扬声器)。

硬件连接

根据开发版指南连接麦克风和扬声器。 sf32lb52-lcd_n16r8 sf32lb52-nano_n16r16 sf32lb52-lchspi-ulp

编译和烧录

切换到例程project目录,运行scons命令执行编译:

> scons --board=eh-lb525 -j32

切换到例程project/build_xx目录,运行uart_download.bat按提示选择端口即可进行下载:

$ ./uart_download.bat

     Uart Download

please input the serial port num:5

关于编译、下载的详细步骤,请参考快速入门的相关介绍。

例程的预期结果

例程启动后:

  1. 系统会自动初始化BLE和音频模块。

  2. 开始扫描周围的对讲设备并建立连接。

  3. 点击 KEY1 按键开始讲话时,其他设备能够听到清晰的语音;再次点击 KEY1 结束讲话。

  4. 当其他设备讲话时,本设备会自动播放语音。

  5. 串口会输出相关的日志信息,便于调试和监控系统状态。

异常诊断

  1. 如果无法发现其他设备,请检查:

    • 确保所有设备都在同一网络中(使用相同的DEFAULT_NETWORK_CODE)

    • 检查BLE功能是否正常启用

    • 确认设备间的距离在有效范围内

  2. 如果音频质量不佳,请检查:

    • 麦克风和扬声器连接是否正确

    • 音频参数配置是否合适(采样率、位深度等)

    • 是否存在电磁干扰

  3. 如果按键无响应,请检查:

    • 按键引脚配置是否正确

    • 按键驱动是否正常加载

    • 按键硬件连接是否可靠

参考文档

更新记录

版本

日期

发布说明

0.0.1

12/2025

初始版本