杰理的智能音箱/音频嵌入式SOC-JL701N芯片,覆盖音频处理、硬件驱动、蓝牙通信、外设管理、UI交互、系统内核等全核心模块,是一套完整的音频类嵌入式产品开发框架。以下从工程核心功能、结构、核心模块分工三方面详细解析:
一、工程核心功能
该工程是杰理JL701N芯片的高集成度音频外设解决方案 ,主打智能音箱/蓝牙音频盒/无线麦克风/充电盒等产品开发,核心能力包含:
-
全链路音频处理:音频采集/编码/解码、音效处理(EQ/DRC/降噪/变声)、AEC回声消除、麦克风混音、IIS/SPDIF数字音频传输;
-
多协议蓝牙通信:经典蓝牙(A2DP/AVRCP)、BLE蓝牙、蓝牙广播(BIG/CIG)、TWS蓝牙耳机配对/同步、蓝牙发射器;
-
丰富外设驱动:按键/触摸键/红外键、LCD/LED/OLED显示、传感器(加速度/心率/气压)、FM收音/发射、USB(设备/主机)、NorFlash/NandFlash存储;
-
产品化功能:充电盒管理(充电检测/握手/无线充电)、OTA升级、功耗管理、日志调试、多设备无线通信(1T2/1T4/2T1);
-
标准化交互: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的通用数据透传方案,支持自定义协议开发。
四、工程设计亮点
-
分层解耦:应用层→芯片适配层→底层库层,各层通过标准化API交互,底层库稳定后,应用层可快速开发不同产品;
-
模块化复用 :
apps/common/提取通用模块,全产品复用,减少重复开发; -
多硬件适配:板级配置模块支持一套源码适配多个硬件方案,降低产品迭代成本;
-
高集成度:一站式覆盖音频处理、蓝牙、外设、系统、升级等全功能,无需额外集成第三方库;
-
产品化导向:内置充电盒、TWS、无线麦克风等主流音频产品的业务逻辑,可快速量产落地。
五、典型应用场景
基于该工程可快速开发杰理JL701N芯片的各类音频外设产品:
-
智能蓝牙音箱、蓝牙音频接收器/发射器;
-
TWS蓝牙耳机充电盒、无线麦克风(一拖多);
-
车载蓝牙音频盒、FM收音/发射一体机;
-
带传感器的智能音频设备(心率/运动检测);
-
带语音唤醒的智能音频外设。
本文基于杰理 JL701N 芯片的嵌入式音频外设开发框架,依托 CodeBlocks 构建,工程采用分层架构,覆盖应用层、芯片适配层与底层库层,核心功能包含全链路音频处理(编解码、音效、AEC)、多协议蓝牙通信(经典蓝牙、BLE、TWS)、丰富外设驱动、充电盒管理及 OTA 升级等,可快速适配智能音箱、TWS 充电盒、无线麦克风等产品。基于 ucos_ii 实时操作系统,模块化设计实现了代码复用与多硬件方案适配,是 JL701N 芯片音频类产品量产开发的完整解决方案。
综上,杰理JL701N芯片的官方音频外设开发框架,功能完整、架构清晰、易扩展,是该芯片开发音频类嵌入式产品的核心基础。