1. 工具依赖

VS Code

用于代码编辑 https://code.visualstudio.com/Download (支持配置工具编译错误跳转,推荐使用)

Git

用于版本管理和补丁合并,工具会检测系统环境变量中是否有Git,如果检测不到会自动启动安装程序

bcompare

用于文件对比

杰理编译器

用于SDK编译 https://doc.zh-jieli.com/Tools/zh-cn/dev_tools/dev_env/index.html

2. 创建工程

  1. 首次使用需要先登陆,杰理员工可通过钉钉扫码登陆,客户可通过微信扫码登陆,登陆成功后才能下载SDK
    _images/login.png
  2. 点击“新建”,在弹出的对话框中点击”检测SDK版本”, 选择方案,然后点击”下载” 下载最新版本SDK
    _images/create_project.png
  3. 配置好项目名称和项目存放路径,点击“创建”, 进入配置界面 (不同SDK配置界面会有差异)
    _images/project.png
  4. 点击菜单栏“编译”->”编译下载”,工具会先导出配置信息到工程目录/output文件夹,然后启动SDK的编译,编译完成后自动下载代码到开发板
    _images/download.png

3. 工程目录结构说明

工程目录/
     |
     -----.git            // 本地git仓库,请勿删除, 否则无法自动合并补丁
     |
     -----.gitignore      // git配置文件,请勿删除
     |
     -----src             // 配置项页面描述文件
     |
     -----SDK             // SDK目录
     |
     -----output          // 存放配置工具导出的配置文件,SDK编译生成的ufw文件也会复制到此目录下
     |
     -----cache           // 缓存文件
     |
     -----project.jlproj  // 工程描述文件

4. SDK编译说明

  1. codeblock编译:

    codeblock编译使用的是cbp文件编译,添加和删除文件也是修改的cbp文件,不支持导出配置,有可能存在代码和配置文件不对应问题,所以不推荐使用

  2. 配置工具编译:

    虽然codeblcok支持命令行方式启动编译,但是存在启动速度慢,闪屏等问题,所以配置工具使用Makefile文件编译,如果要新增文件,需要手动修改Makefile。 支持打开VS Code跳转到错误位置。

  3. VS Code编译:

    在VS Code中打开”终端”, 先执行make_prompt.bat设置环境变量,之后可以通过make -j命令编译

5. 主页功能说明

_images/home_page.png

版本号: 当前项目SDK的版本号

版本补丁: 当前已发布的最新补丁号, 红色表示有新的补丁未合并。带”.**”后缀的表示内测版

检测更新: 点击会检测工程列表中所有项目是否存在新的补丁

复制: 用于复制项目

6. 菜单功能说明

项目-> 项目设置

音频流程图数据文件(stream.bin)相关配置

项目-> 导出项目工具

导出当前工程的离线版本,离线版本JLStudio不需要登陆,不能创建项目,不能下载SDK。可用于分发自己的SDK

快照-> 保存快照

用于保存工程当前配置,工具会在工程目录下先执行git add 和 git commit 命令保存所有改动,然后通过git tag命令打上对应标签

快照-> 快照列表

管理快照

编译-> 导出配置

导出工程的配置文件

编译-> 编译下载(带key)

编译SDK并下载, 下载脚本会自动带上当前使能的key文件路径

编译-> key文件配置

配置key文件

编译-> 擦除VM

擦除VM区域,并启动下载

编译-> 擦除flash

擦除flash所有数据,包括保留区域,并启动下载

编辑-> 打开SDK

通过codeblock或者VS Code 打开SDK工程

编辑-> 编辑器配置

配置codeblock和VS Code安装路径,选择默认使用的IDE

调试-> 导出调试(ufw)

导出可编辑的ufw工程, 可以在对话框中选择支持编辑的功能选项

调试-> 导入调试(ufw)

导入编辑后的ufw工程,配置项的修改会和当前项目的进行合并,音频流程图不支持合并,只能选择替换

调试-> 打开调试(ufw)

打开导出的ufw工程,可用于修改SDK的一些配置和调音

调试-> 样机调音

在没有工程和ufw文件的情况下,通过连接样机进行调音,只支持修改参数,不支持增加/删除音效模块

工具-> IO使用情况

项目IO口使用情况汇总信息

工具-> sin工具

正玄波格式(.sin)提示音生成工具

工具-> 串口输出工具

通用串口终端, 支持SDK带颜色打印, 可以将”情景配置”相关打印翻译成对应的中文描述

工具-> 设备状态工具

连接样机情况下,查看样机CPU,icahe,任务堆栈使用情况

工具-> 拓展

引用的第三方工具

未连接/已连接

通过串口连接小机, 用于在线调试

7. 配置文件说明

sdk_config.h

配置项生成的宏定义

执行 编译->编译下载 时,工具会先调用SDK目录下的make_prompt.bat

将output目录下的这两个文件copy到SDK目录下参与编译

sdk_config.c

配置项生成的const变量定义

cfg_tool.bin

配置项生成bin文件, 比如蓝牙名

支持通过ufw编辑

stream.bin

音频流程图配置信息

支持通过ufw编辑

tone_en.cfg

提示音文件

提示音文件需要在提示音配置页面单独导出,工具会根据导出的选项在

sdk_config.h中生成TCFG_TONE_ZH_ENABLE和TCFG_TONE_EN_ENABLE宏定义

tone_zh.cfg

8. 补丁更新

进入主页,点击项目的”补丁版本”按钮,进入到如下所示的补丁管理界面
_images/patch_1.png
配置好bcompare软件所在的路径,点击蓝色的补丁号会打开补丁修改文件列表对话框
_images/patch_2.png
单击文件可自动打开bcompare对比界面,可以看到补丁修改的具体内容
_images/patch_3.png
点击”自动合并”按钮,工具开始自动合并到最新补丁,如果有文件冲突,会显示红色
_images/patch_4.png
点击冲突文件,会打开如图所示的bcompare合并界面,根据冲突信息自行合并
_images/patch_5.png
也可以通过VS Code打开冲突文件,利用VS Code的合并功能进行合并
_images/patch_6.png

9. 项目协作

创建支持协作开发的项目:

  1. 登陆自己的git服务器,创建一个空的git仓库,复制仓库地址。如果没有自己的git服务器,也可以使用github,gitee等开源平台。

  2. 执行 项目->新建工程,先配置项目信息,再填写仓库地址和账号,工具会将sdk版本和仓库地址做绑定, 后续切换SDK版本即可同步切换git仓库。

_images/project_git_1.png
  1. 执行 “创建并push”,配置工具会先创建本地项目,然后推送到远端仓库的master和dev分支

_images/project_git_2.png
协作开发:
  1. 协作项目创建完成后, 其他项目成员执行 项目->新建工程, 先配置项目信息,再填写仓库地址和账号,执行”远端clone”, 即可从远端仓库的dev分支创建本地项目

_images/project_git_3.png
  1. 在打开的项目中, 点击 项目->项目协作,即可打开协作窗口。

    2.1 在输入框输入修改内容,点击commit, 可将修改提交到本地project分支。

    2.2 执行push操作,可将本地project分支修改合并到远端仓库dev分支。

    2.3 执行pull操作,可将远端仓库dev分支合并到本地project分支。

    _images/project_git_6.png
  1. 更新标准补丁,执行更新补丁操作时,配置工具会将标准SDK补丁合并到master分支、master分支合并到dev分支、dev分支合并到project分支。

    当某个项目成员合并了标准补丁后,其他项目成员执行pull操作即可同步更新。

    请勿修改/删除 master分支,否则可能导致无法更新标准补丁。

已存在的项目转换成支持协作开发的项目:
  1. 同样的方式先创建一个空的git仓库, 点击 项目->项目协作,填写git仓库地址和账号,执行push即可。

    _images/project_git_5.png
问题处理:
  1. git仓库地址填写错误,导致无法push,需要在项目目录下,打开git base, 执行:git remote remove originStore

  2. 目前是统一把git配置ssl校验设置为false, 如果出现以下提示,可以自己命令行修改git配置:

    _images/project_git_7.png
  3. 有些网站的ssl校验需要设置为true, 如果出现以下提示,可以针对仓库域名设置ssl校验:(eg: git config –global –bool –add http.https://gitlab.zh-jieli.com.sslverify true)

    _images/project_git_8.png