目录
环境搭建
安装编译工具链:
gcc-arm-none-eabi-4_9-2014q4-20141203-win32.exe
make-3.81.exe
并在系统变量 path 添加 gcc 和 make 的相关路径:
C:\Program Files (x86)\GnuWin32\bin
C:\Program Files (x86)\GNU Tools ARM Embedded\4.9 2014q4\bin
sdk文件结构介绍
如下图所示:
apps:上层应用代码
config:与代码相关的宏开关,客户差异化管理,包括GPIO/LED/PROMPT,并且可根据不同的芯片型号或者应用场景选择不同的工程
include:系统相关的头文件
out:编译输出文件
platform:平台相关,包含芯片型号相关配置,驱动,hal(硬件抽象层),系统运行入口main
rtos:系统内核代码
scripts:编译、链接脚本
services:服务层代码,包括bt,audio,ota等等
tests:测试相关代码
thirdparty:第三方库
utils:公共模块代码,比如加密/校验算法,fifo,链表等等
编译
这里我写了一些脚本,辅助开发
open_dir.bat //打开cmd,并定位到当前脚本所在目录
cmd /K cd ".\"
clean.bat //清理目标工程
set TARGET_PRJ=best2300_ep
make clean T=%TARGET_PRJ%
rebuild_and_copy.bat //编译
@echo off
set TARGET_PRJ=best2300_ep
set DOWNLOAD_FOLDER=.\
if "%1"=="0" (
make T=%TARGET_PRJ% DEBUG=1
copy /y out\%TARGET_PRJ%\%TARGET_PRJ%.bin %DOWNLOAD_FOLDER%
) else if "%1"=="1" (
make clean T=%TARGET_PRJ%
make T=%TARGET_PRJ% DEBUG=1
copy /y out\%TARGET_PRJ%\%TARGET_PRJ%.bin %DOWNLOAD_FOLDER%
)
@echo on
该脚本的一些宏定义及参数的意义为:
TARGET_PRJ //目标工程,根据config目录去选择
DOWNLOAD_FOLDER //编译完之后,生成的bin文件拷贝到该目录下
DEBUG=1 //打开debug
-j lst //与DEBUG一样可作为make命令的参数,生成*.lst文件
脚本运行方式如下图所示:
参数为1时,代表先clean在编译,耗时较长,首次使用或release版本时推荐使用
参数为0时,代表直接编译,只编译改变的部分,耗时较短,推荐调试过程中快速验证
烧录
烧录使用bes的dld_main工具,无需安装,解压后直接运行dld_main.exe程序
配置烧录选项
其中User 、Pwd都为1,然后设置配置项,如下图所示:
- 注意烧录文件路径不能有中文
- Earse the whole flash勾选擦除flash所有区域
- Updata Sector选项如果不能勾选的的话,请打开工具目录下的productline_cfg.xml,修改updatasector enable为1,如下图所示
- 地址、烧录成功地址自增、名称和频偏值等,可根据需求选择是否要设置、修改
- 芯片版本根据芯片的实际型号,这个不能选错
- Factory mode选项用于产线的校频和连接测试,需要有bes的专门的校频板配合
选择端口
如上图操作,选择与设备通讯的串口
启动升级
点击开始,然后将设备关机后再开机,即可启动设备升级
升级成功之后点击停止,掉电再重启设备即可。
简单使用
- 对于立体声工程
长按开机键开机不松手,直至听到pairing提示音,即可手机用搜索连接,即可正常使用蓝牙功能了
- 对于tws耳机工程
两边长按开机起来之后,一边双击开机键进入ibrt连接。等待对耳连接,听到source connected提示音之后,即为tws连接成功,打开手机搜索设备连接即可使用tws功能了
两边开机之后,一边双击开机键进入ibrt连接,听到source connected提示音之后,即为tws连接成功,打开手机搜索设备连接即可使用tws功能
相关资料请到<bes2300开发调试笔记>文章底部的网盘链接中下载!