杰理JL701N蓝牙音频嵌入式SOC产品开发框架

杰理的智能音箱/音频嵌入式SOC-JL701N芯片,覆盖音频处理、硬件驱动、蓝牙通信、外设管理、UI交互、系统内核等全核心模块,是一套完整的音频类嵌入式产品开发框架。以下从工程核心功能、结构、核心模块分工三方面详细解析:

一、工程核心功能

该工程是杰理JL701N芯片的高集成度音频外设解决方案 ,主打智能音箱/蓝牙音频盒/无线麦克风/充电盒等产品开发,核心能力包含:

  1. 全链路音频处理:音频采集/编码/解码、音效处理(EQ/DRC/降噪/变声)、AEC回声消除、麦克风混音、IIS/SPDIF数字音频传输;

  2. 多协议蓝牙通信:经典蓝牙(A2DP/AVRCP)、BLE蓝牙、蓝牙广播(BIG/CIG)、TWS蓝牙耳机配对/同步、蓝牙发射器;

  3. 丰富外设驱动:按键/触摸键/红外键、LCD/LED/OLED显示、传感器(加速度/心率/气压)、FM收音/发射、USB(设备/主机)、NorFlash/NandFlash存储;

  4. 产品化功能:充电盒管理(充电检测/握手/无线充电)、OTA升级、功耗管理、日志调试、多设备无线通信(1T2/1T4/2T1);

  5. 标准化交互:RCSP协议(杰理私有控制协议)、第三方协议适配、按键/UI界面交互、语音唤醒(KWS)/语音识别(ASR)。

工程整体基于ucos_ii实时操作系统 开发,采用分层架构(应用层-中间件层-驱动层-芯片底层),可直接适配JL701N芯片的各类音频外设产品量产开发。

二、结构

功能模块+分层设计 划分目录,核心一级目录为apps/cpu/include_lib/,整体呈应用层→芯片适配层→底层库层的三级架构,目录分工清晰且低耦合:

核心目录 层级 核心作用
apps/ 应用层 产品业务逻辑实现,分通用模块(common)和产品专属模块(soundbox)
cpu/br28/ 芯片适配层 杰理BR28内核(JL701N核心)的硬件适配、驱动封装、音频中间件实现
include_lib/ 底层库层 芯片底层驱动库、蓝牙协议栈、媒体处理库、系统内核库,提供标准化API接口

关键二级子目录分工

1. 应用层apps/核心子目录

  • apps/common/通用功能模块,全产品复用,含音频、蓝牙、外设、存储、升级、RCSP协议等;

  • apps/soundbox/智能音箱专属业务层,基于通用模块实现产品化逻辑,含板级配置、任务管理、UI交互、无线通信等;

    • 子目录:aec/(回声消除)、board/(板级配置,多硬件方案适配)、task_manager/(业务任务调度)、ui/(界面交互)等。

2. 芯片适配层cpu/br28/核心子目录

  • 核心:audio_dec/(音频解码)、audio_enc/(音频编码)、audio_effect/(音效处理)、audio_mic/(麦克风处理);

  • 硬件:ui_driver/(UI硬件驱动)、power/(功耗管理)、smart_voice/(智能语音);

  • 外设:adc_api.c/iic_hw.c/spi.c等芯片外设底层封装。

3. 底层库层include_lib/核心子目录

  • btctrler//btstack/蓝牙协议栈,含经典蓝牙/BLE/BT Audio/TWS,提供标准化蓝牙API;

  • driver/芯片底层驱动,CPU外设(GPIO/UART/IIC)、设备驱动(USB/Flash/传感器);

  • media/媒体处理库,音频编解码、音效算法、PCM处理、混音等底层算法;

  • system/系统内核库,ucos_ii OS、任务调度、内存管理、文件系统、通用工具函数;

  • update/升级库,OTA/串口升级/双区升级的底层实现。

三、核心功能模块详细解析

基于目录和文件内容,工程可拆解为12大核心模块 ,各模块相互配合实现完整产品功能,模块间通过标准化API调用,低耦合易扩展:

1. 音频处理模块【核心】

工程最核心模块,覆盖音频采集→处理→编码→解码→输出 全链路,是音频产品的核心能力,分布在apps/common/audio/cpu/br28/audio_*/include_lib/media/

  • 采集/输入:麦克风(单/多麦)、LineIn、IIS/SPDIF数字输入、USB麦克风;

  • 编码/解码:SBC编码、各类音频格式解码、Tone音解码、蓝牙音频编解码;

  • 音效处理:EQ均衡、DRC动态范围压缩、降噪/回声消除(AEC)、变声/混响/虚拟低音、麦克风AGC自动增益;

  • 音频管理:数字音量、音频通路切换、混音(多音源)、音频同步、频谱分析。

2. 蓝牙通信模块

基于杰理蓝牙协议栈开发,支持经典蓝牙+BLE+BT Audio 全协议,分布在apps/common/bt_common/include_lib/btctrler/include_lib/btstack/apps/soundbox/task_manager/bt/

  • 经典蓝牙:A2DP/AVRCP(音频播放/控制)、SPP串口透传;

  • BLE蓝牙:BLE主从、BLE广播(BIG/CIG)、BLE Audio;

  • TWS功能:TWS耳机配对、音频同步、音量同步、主从切换;

  • 蓝牙发射:蓝牙音频发射器,实现普通音频转蓝牙输出;

  • 私有协议:基于BLE/SPP实现的RCSP控制协议,用于设备间指令交互。

3. 外设驱动模块

覆盖JL701N芯片支持的所有主流外设 ,驱动分层设计(底层芯片驱动→设备封装→应用调用),分布在apps/common/device/cpu/br28/include_lib/driver/

  • 按键类:AD键、IO键、红外键、触摸键、旋转编码键、滑键;

  • 显示类:LCD(SPI/RGB/MCU)、OLED、7段LED、彩光LED;

  • 传感器类:加速度传感器(SC7A20)、心率传感器(MAX30102)、气压传感器(BMP280/QMC5883)、入耳检测;

  • 射频类:FM收音(BK1080/RDA5807)、FM发射(QN8007/QN8027);

  • 存储类:NorFlash、NandFlash、FatFs文件系统;

  • 总线/接口:IIC/SPI/UART、USB(设备:CDC/HID/MSD/UAC;主机:ADB/U盘/音频)。

4. 充电盒管理模块

专为TWS充电盒 设计的专属模块,分布在apps/common/charge_box/,实现充电盒全功能:

  • 充电检测:电池电量检测、充电状态识别;

  • 设备交互:充电盒与耳机的握手通信、状态同步;

  • 功能控制:无线充电、LED状态指示、充电保护;

  • UI交互:充电盒按键/LED的界面逻辑。

5. 板级配置模块

分布在apps/soundbox/board/br28/,为多硬件方案适配 设计,每个硬件方案对应一个子目录(如board_jl701n_demo//board_jl701n_tws_box/):

  • 每个方案包含:板级配置文件(引脚/外设)、按键表、全局编译配置;

  • 支持一键切换硬件方案,适配不同产品的硬件差异,实现一套源码多产品适配

6. 任务调度模块

基于ucos_ii实时系统的业务任务管理 ,分布在apps/soundbox/task_manager/,是应用层的核心调度中心:

  • 按功能拆分独立任务:蓝牙任务、FM任务、音乐任务、录音任务、UI任务等;

  • 实现:任务创建/切换、按键事件分发、各功能模块的协同工作;

  • 核心:task_key.c(按键事件处理)、app_task_switch.c(任务切换)。

7. UI交互模块

覆盖音频外设的主流UI交互方式 ,分层设计(驱动层→API层→业务层),分布在apps/common/ui/apps/soundbox/ui/cpu/br28/ui_driver/

  • 硬件驱动:LCD/OLED/LED/7段屏的底层驱动封装;

  • API层:提供标准化的UI绘制API(文字/图形/进度条/歌词);

  • 业务层:各功能的UI界面逻辑(蓝牙界面/FM界面/音乐界面/待机界面);

  • 支持:多风格UI切换、彩光LED效、歌词显示、系统参数界面。

8. 无线通信模块

专为多设备无线音频传输 设计,分布在apps/soundbox/wireless/apps/common/uart_1t2/,支持多种无线传输方案:

  • 传输模式:1T2/1T4/1TN(一主多从)、2T1(多主一从)、半双工/全双工;

  • 应用场景:无线麦克风、多设备音频同步、音频透传;

  • 核心:音频数据无线传输、同步、参数配置。

9. 智能语音模块

基础智能语音能力,支持语音唤醒+语音识别 ,分布在cpu/br28/smart_voice/include_lib/media/tech_lib/

  • 语音唤醒(KWS):本地关键词唤醒,支持自定义关键词;

  • 语音识别(ASR):对接第三方ASR引擎(如思必驰);

  • 辅助:VAD语音活动检测、麦克风数据采集/处理。

10. 系统管理模块

嵌入式系统的基础能力支撑 ,分布在include_lib/system/apps/common/debug/

  • 系统内核:ucos_ii RTOS、任务管理、内存管理、定时器;

  • 工具函数:通用数据结构、日志调试、原子操作、中断管理;

  • 文件系统:FatFs、NorFlash/NandFlash的文件操作;

  • 功耗管理:低功耗模式、睡眠/唤醒、电源检测;

  • 调试能力:在线调试、日志输出、故障检测。

11. 升级模块

全场景固件升级能力 ,分布在apps/common/update/include_lib/update/

  • 升级方式:串口升级、OTA升级、USB升级、双区升级(Dual Bank);

  • 核心:升级包校验、固件下载、分区烧写、升级回滚(防变砖);

  • 应用:设备本地升级、多设备批量升级。

12. 第三方协议适配模块

设备互联/生态对接 设计,分布在apps/common/third_party_profile/include_lib/btstack/third_party/

  • 私有协议:杰理RCSP协议(设备间控制);

  • 第三方协议:ANCS(苹果通知)、各厂商自定义应用协议;

  • 数据透传:基于BLE/SPP的通用数据透传方案,支持自定义协议开发。

四、工程设计亮点

  1. 分层解耦:应用层→芯片适配层→底层库层,各层通过标准化API交互,底层库稳定后,应用层可快速开发不同产品;

  2. 模块化复用apps/common/提取通用模块,全产品复用,减少重复开发;

  3. 多硬件适配:板级配置模块支持一套源码适配多个硬件方案,降低产品迭代成本;

  4. 高集成度:一站式覆盖音频处理、蓝牙、外设、系统、升级等全功能,无需额外集成第三方库;

  5. 产品化导向:内置充电盒、TWS、无线麦克风等主流音频产品的业务逻辑,可快速量产落地。

五、典型应用场景

基于该工程可快速开发杰理JL701N芯片的各类音频外设产品:

  • 智能蓝牙音箱、蓝牙音频接收器/发射器;

  • TWS蓝牙耳机充电盒、无线麦克风(一拖多);

  • 车载蓝牙音频盒、FM收音/发射一体机;

  • 带传感器的智能音频设备(心率/运动检测);

  • 带语音唤醒的智能音频外设。

本文基于杰理 JL701N 芯片的嵌入式音频外设开发框架,依托 CodeBlocks 构建,工程采用分层架构,覆盖应用层、芯片适配层与底层库层,核心功能包含全链路音频处理(编解码、音效、AEC)、多协议蓝牙通信(经典蓝牙、BLE、TWS)、丰富外设驱动、充电盒管理及 OTA 升级等,可快速适配智能音箱、TWS 充电盒、无线麦克风等产品。基于 ucos_ii 实时操作系统,模块化设计实现了代码复用与多硬件方案适配,是 JL701N 芯片音频类产品量产开发的完整解决方案。

综上,杰理JL701N芯片的官方音频外设开发框架,功能完整、架构清晰、易扩展,是该芯片开发音频类嵌入式产品的核心基础。