开发环境搭建与使用¶
1. 概述¶
- 本文为CI230系列芯片软件开发包(SDK)环境安装与使用手册,旨在方便开发人员快速开发代码。
2. 软件下载¶
- 官网 ☞Visual Studio Code 下载 VSCodeUserSetup,必须 VSCodeUserSetup-x64-1.60.0.exe 或以上版本。
3. 软件安装¶
- 双击安装 VSCodeUserSetup-x64-1.60.0.exe,选同意协议,再下一步
- 勾选下列配置,再点下一步
- 点安装
- 等待安装完成即可。
3.1 打开工程的方法¶
方法一:进入CI230X_SDK文件夹(.vscode文件夹所在的目录),空白处右键“通过Code打开”:
方法二:选中C230X_SDK文件夹(.vscode文件夹的上一级),右键“通过Code打开”:
方法三:先打开vscode软件,如图3-6通过菜单栏->文件->打开文件夹,再如图3-7选中C230X_SDK文件夹(.vscode文件夹的上一级)
4. CI230系列芯片语音部分SDK编译步骤¶
4.1 方式一 快捷键¶
- 按快捷键 Ctrl + Shift + B,在下列弹窗中选择 compile(编译) 或 clean (清除)。
4.2 方式二 点击图标¶
- 先安装插件,点击下图所示左侧软件商店图标,再点右上角三个省略号图标
- 在点击省略号出来的选项中,选择“从VSIX中安装” 或 “Installed from VSIX”
- 找到 SDK/tools/ci-tool-1.1.0.vsix 安装,等待安装完成即可,左上角会出现下列编译图标。
- 请先到启英泰伦官网☞启英泰伦语音AI平台下载开发环境搭建软件包,软件包包括语音部分和wifi部分,工具包包含三部分,请完整下载后解压得到toolchain-audio和toolchain-wifi
- 设置gcc编译工具链,解压CI230x_gcc库.rar到任意目录,点工程下图处,设置编译器路径。
- 选择编译器路径 :
- 点下图示AI图标,左上角选项框中可以看到所有工程名
-
右击需要编译的工程名,选项功能介绍如下:
-
1: “生成”:编译compile
-
2:“清理”:清除clean
-
3: “设为活动工程”:快捷键编译方式默认编译活动工程
-
4: “设置烧录串口号”:输入串口号,如com3,不区分大小写,请确保输入正确且不被占用。
-
5: “合成分区bin文件”:调用合成分区bin文件.bat,在vscode软件输出窗口命令行运行合成
-
6: “启动打包升级工具”:启动串口升级工具.exe
-
7: “烧录user code”:烧录user_code.bin
5. CI230系列芯片语音部分SDK添加源文件方法¶
说明
CI230系列芯片的SDK中如果用户增加了新的源代码文件,必须找到工程文件SDK\projects\cias_aiot_audio\project_file\source_file.prj,参照下列示例添加文件到工程编译。
5.1 添加.h头文件¶
- 找到//header file path.注释所在位置,参照示例填写.h头文件所在相对路径
//header file path.
include-path: driver/ci130x_chip_driver/inc
include-path: driver/boards
5.2 添加.c源文件¶
- 找到//source files.注释所在位置,参照示例填写.c源文件所在相对路径
//source files.
source-file: driver/ci130x_chip_driver/src/ci130x_core_eclic.c
source-file: driver/ci130x_chip_driver/src/ci130x_core_timer.c
5.3 添加.a库文件¶
- 参照示例填写.a库文件所在相对路径
library-file: libs/libnewlib_port.a
library-file: libs/libasr.a
6. CI230系列芯片语音部分SDK固件烧录¶
请先到启英泰伦AI开发者平台 ☞启英泰伦语音AI平台 资料库中下载语音开发工具: 启英泰伦语音离线开发工具.zip ,CI230系列芯片的wifi固件和语音固件都将通过该工具进行固件的制作与烧录。
6.1开发板套件说明¶
在进行开发板固件烧录之前,请先熟悉CI230系列芯片配套开发板板载接口和资源,开发板套件说明请参考:☞《CI-E05GT02S_MB开发板套件说明》
6.2 固件编译生成¶
步骤1:编译代码生成user_code.bin 文件¶
步骤2:生成其他所需4个bin文件(asr.bin、dnn.bin、user_code.bin、voice.bin)¶
方法一:编译软件中直接合成¶
方法一:双击运行脚本(合成分区bin文件.bat)¶
(1)进入SDK\projects\cias_aiot_audio\firmware\下, 如下图6-6所示:
2)双击打开合成分区bin文件.bat,等待软件运行完成自动退出,调用脚本后,会在SDK\projects\cias_aiot_audio\firmware\asr、dnn、user_file、voice各自目录下自动生成asr.bin、dnn.bin、user_file.bin和voice.bin文件。
注意
- 10s处理完成后cmd.exe自动退出,如果没有自动退出,生成.bin文件失败,请检查asr、dnn、user_file、voice下文件或文件名是否正确;
6.3 步骤一 打包升级固件¶
- 启动打包升级工具,进入固件打包界面,选择芯片->导入固件分区文件->自动计算分区文件地址->打包固件,如果固件生成太大,请改变flash大小,如图所示:
- 点击固件升级,烧录合成固件(如果用我司开发板CI-E05G02S_MB,需要将拨码开关拨到VOICE进行烧录,开发板板图参考图6-5)
- 开发板示意图,烧录语音固件需要将拨码开关拨到voice一侧
6.4 步骤二 烧录use code¶
-
针对调试中只修改了use code分区的应用,可以直接在vscode编译器中烧录,无需重新对固件进行打包升级,升级方法如下:
-
右击工程名,选择烧录use code(或快捷键Ctrl+F11),按照如下提示进行硬件复位:
- 升级完成界面如下:
7. CI230系列芯片 语音部分SDK常见问题¶
7.1 升级use code失败¶
- 原因是当前烧录的use_code.bin的大小超出了固件中user分区预留的大小,解决办法,使用固件打包升级工具,重新打包固件,将use分区调大至合理值,参考章节6.3。
8. CI230系列芯片 WIFI部分SDK编译开发环境搭建¶
8.1. Python3安装 :¶
-
双击Python3安装包,以默认方式安装,目录可以自定义 eg;D:\works\TOOLS\LNxxxx_tool;
-
PATH 环境变量设置:打开环境变量编辑器,编辑用户或者系统的环境变量PATH,添加对应的 python3 安装路径,如图所示
-
进入到python3安装路径,复制 python.exe 并重新命名为 python3.exe
- 确认python是否安装成功: 安装成功会显示版本信息 ,如图所示
8.2. ARM GCC工具链安装¶
- 安装gcc-arm-none-eabi-10-2020-q4-major-win32.exe 到指定目录即可;(注意:安装路径一定不要以数字开头,并且安装路径不要出现空格,不然编译打包时会报错),如图所示
- 添加 工具链到系统环境变量PATH中:如图所示
- 添加一个环境变量名:CROSS_TOOLCHAIN_ROOT,变量值:D:\GNU_Arm_Embedded_Toolchain\2020-q4-major ,如图所示
- 确认arm-none-eabi-gcc工具链是否安装成功,安装成功会显示版本信息,如图所示
8.3. CMake编译工具安装¶
-
安装 cmake-3.17.2win64-x64.msi 到指定目录
-
添加CMake安装路径到环境变量中,如图所示
- 确认CMake是否安装成功,安装成功会显示版本信息,如图所示
8.4. Ninja 安装¶
-
解压安装包EXE文件到指定目录:xxx\xxx\ninja-win,不需要安装。
-
添加Ninja安装路径到环境变量中,如图所示
- 确认Ninja是否安装成功,安装成功会显示版本信息,如图所示
9. CI230系列芯片 WIFI部分SDK编译步骤(注意:在导入WIFI SDK时,尽量不要让导入路径太长,否则容易编译报错)¶
-
在vscode中新建终端,然后开始执行编译指令,参考下面编译指令,编译结果如图所示
-
清除结果: python3 start_build.py clean
-
编译工程: python3 start_build.py build
-
清除、编译二合一: python3 start_build.py rebuild
10. CI230系列芯片 WIFI部分SDK固件烧录¶
- 进入wifi烧录界面,然后点击编辑(选择固件,设置烧录地址(默认从0x00开始),设置波特率(一般设置为2Mbits/s),如图所示
-
让设备进入烧录模式(按住BOOT按键,并重启设备,重启以后可以松开boot按键)
-
设备重启以后点击开始下载图标进行下载,开发板的拨码开关需要拨到wifi一侧
11.鉴权文件烧录¶
启英泰伦-语音开发工具,目前集成了腾讯IOT鉴权文件烧录,腾讯TVS云鉴权文件烧录,涂鸦云鉴权文件烧录功能,用户根据自己使用的云平台进行鉴权文件的烧录,同时也可以通过SDK 参考现有的鉴权文件烧录代码,进行扩展实现自己平台的鉴权文件烧录功能;需要注意:如果使用的是我司提供的开发板,需要将拨码开关拨到WIFI一侧才能进行鉴权文件烧录(请参考WIFI固件烧录说明)。
-
第一步:需要打开串口,串口使用语音固件烧录串口,波特率使用115200,如上图标注1
-
第二步:选取云平台类型,如上图标注2
-
第三步:设置/获取鉴权文件,如上图标注3
腾讯IOT鉴权文件烧录:鉴权文件组成字段(产品ID,产品名称,鉴权秘钥),烧录结果如下图: