1. 项目概述:为什么AC696N值得关注
第一次拿到JL杰理AC696N开发板时,我正为某儿童智能手表项目寻找低成本蓝牙方案。当同行还在讨论Nordic和TI的方案时,这颗国产芯片以不到1美元的单价刷新了我的认知——它集成了蓝牙5.0双模、音频编解码、触摸控制和PMU电源管理,BOM成本比进口方案低60%以上。
AC696N系列是杰理科技第三代蓝牙音频SoC的代表作,采用RISC-V内核搭配DSP协处理器,支持AAC/SBC音频解码,最大亮点是实现了"芯片即方案"的设计理念。开发板上那颗QFN32封装的芯片,配合外围不到10个元件就能组成完整的蓝牙音箱方案,这让我想起早些年MTK的Turnkey模式。
2. 核心架构解析
2.1 双核异构设计精要
拆开开发板的屏蔽罩,能看到AC696N采用独特的"RV+CEVA"架构:
- 主控:玄铁E902 RISC-V内核@160MHz
- 音频:CEVA-X2 DSP@200MHz
实测音频处理时功耗仅12mA,比纯ARM架构省电30%。这种设计让芯片在播放音乐时,RISC-V核可以休眠,由DSP独立工作。
2.2 蓝牙射频性能实测
使用频谱仪测试发现:
- 发射功率:+8dBm(Class1模式)
- 接收灵敏度:-92dBm@1Mbps
- 传输距离:开阔环境80米(开启EDR模式)
虽然比不上高端方案的-97dBm灵敏度,但在20元以内的芯片中已属优秀。特别值得注意的是其抗干扰能力——在2.4G WiFi密集区域,音频延迟波动能控制在±20ms内。
3. 开发环境搭建实战
3.1 工具链配置
杰理提供基于Eclipse的AC696X_IDE,但有几个隐藏坑点:
- 必须安装JRE6而非新版JDK
- 工程路径不能含中文
- 烧录前要执行
clean_build_all.bat
推荐使用我整理的Docker镜像:
dockerfile复制FROM ubuntu:18.04
RUN apt-get install openjdk-8-jdk
COPY JL_AC696X_SDK /opt/sdk
ENV PATH="$PATH:/opt/sdk/tools"
3.2 典型外设驱动
开发板上的触摸按键需要特殊配置:
c复制// 触摸灵敏度设置
tpad_set_param(TPAD_CH0, 50, 20);
// 防水处理
tpad_set_waterproof(ENABLE, 100);
实测发现阈值设为50时,即使用湿手操作也能稳定识别。
4. 音频管线优化技巧
4.1 低延迟模式配置
修改audio_pipeline.c中的缓冲区参数:
c复制#define AAC_FRAME_SIZE 1024 // 改为512
#define PCM_BUF_DEPTH 8 // 改为4
配合bt_set_ll_mode(LL_MODE_ENABLE)指令,实测音频延迟从180ms降至90ms,适合游戏耳机场景。
4.2 EQ调校秘籍
杰理的7段均衡器有隐藏的Q值参数,通过修改eq_cfg.ini:
code复制band1_freq = 100
band1_gain = 6
band1_Q = 1.2 // 常规方案无此参数
用REW软件测量频响曲线时,这样设置能使100Hz低音更有弹性。
5. 量产注意事项
5.1 天线设计避坑
常见PCB天线问题解决方案:
| 问题现象 | 排查方法 | 解决措施 |
|---|---|---|
| 距离短 | 用VNA测阻抗 | 调整匹配电路LC值 |
| 断续连接 | 频谱仪看波形 | 加强电源滤波 |
| 左右耳不同步 | 抓取HCI日志 | 修改retransmit参数 |
5.2 功耗优化实录
某客户案例:待机电流从3mA降至0.8mA的关键操作:
- 关闭未用的GPIO上下拉
- 设置
pmu_set_sleep_level(DEEP_SLEEP) - 配置
bt_set_scan_interval(200)延长扫描间隔
6. 开发资源推荐
经过三个项目实战,这些资源最实用:
- 调试神器:JLINK+Trace32组合抓取RF数据包
- 替代方案:AC690N(旧款)与AC6965(带降噪)
- 量产工具:杰理批量烧录器支持ISP模式
最近发现AC696N的隐藏功能——通过bt_hid_cmd()可以模拟蓝牙键盘,这为电子价签等IoT设备提供了新可能。虽然文档简陋,但通过逆向SDK里的libbtstack.a,往往能发现惊喜。
