【学习&开发之路】放弃Keil吧!VSCode搭建CI13XX开发环境效率提升300%
一、概述
CI13XX系列芯片不得不说是Chipintelli(启英泰伦科技有限公司,简称:CI)推出的最为经典的AI语音系列芯片之一。CI13XX系列芯片(CI1301、CI1302、CI1303、CI1306、CI1311、CI1312)集成BNPU V3,高主频(240MHz),更大SRAM,算力更强。采用SSOP24/QFN40/SOP16三种封装,可适应不同应用及贴片要求。集成度更高,外围精简,除MIC,喇叭外,板级仅需要阻容、PA芯片。可实现单麦降噪、AEC、双麦增强、双麦定向等功能,另CI1302、CI1303、CI1306还支持声纹识别和离线自然说。具体的芯片数据信息可以直接参考硬件选型指南 - 启英泰伦文档中心。
要开始使用 CI13XX系列芯片进行开发,您需要一些基本知识:
- 熟悉 C/C++ 编程语言。
- 了解电子电路和传感器的基本知识。
- 串口通信的基本使用步骤。
二、安装VScode
1.下载安装包,到官方网站下载Windows的安装包:Visual Studio Code - Code Editing. Redefined
2.安装
在自己电脑除C盘外的一个磁盘创建“vscode”文件夹,路径不要带中文。
运行下载的安装包
将安装路径选择刚才新建的“vscode”文件夹
勾选下列配置,再点下一步
点击安装
到这里就安装好了,下面进行配置,使vscode支持CI13XX系列芯片的开发。
三、配置VScode+CI TOOL
1.本地创建工作目录
在自己电脑除C盘外的一个磁盘创建“CiProject”文件夹,路径不要带中文。
2.下载SDK开发包,到启英泰伦官方网站下载:
点击进入语音AI平台后,点击登陆语音AI平台
点击注册一个账号,然后登录
成功登录后,点击“开发资料”
点击“CI130X离线SDK”,选择最新Offline版本的SDK文件,点击“下载文件”
将“CI130X_SDK_ASR_Offline_V2.2.0.zip”SDK压缩包保存到开头创建的“CiProject”文件夹中
点击保存
将“CI130X_SDK_ASR_Offline_V2.2.0.zip”SDK压缩包解压到当前文件夹
3.安装ci-tool插件
点击进入“CI130X_SDK_ASR_Offline_V2.2.0”SDK文件开发包,确定.vscode文件夹在该目录中
在空白处右键“通过Code打开”
打开后点击“是,我信任此作者”
点击左侧软件商店图标,再点右上角三个省略号图标
选择“从VSIX中安装” 或 “Installed from VSIX”
找到CI130X_SDK_ASR_Offline_V2.2.0/tools/ci-tool-1.1.2.vsix 点击安装,等待安装完成即可
安装完成后,会在左侧工具栏中出现表示CI TOOL的AI图标
安装gcc编译工具链, gcc编译工具链也需要到 ☞启英泰伦语音AI平台 开发资料中下载 。
可以将riscv-nuclei-elf-gcc-9.2.0.rar压缩包保存到开头创建的“CiProject”文件夹中
用“解压到riscv-nuclei-elf-gcc-9.2.0”将gcc编译工具链解压出来
解压后的gcc编译工具链文件夹如下:
打开刚刚的vscode界面,点击“设置编译器路径”
选择编译器路径
至此,CI13XX系列芯片的开发环境就搭建完毕了!
四、编译链接
1.编译链接当前SDK中的工程
点击AI图标
左上角选项框中可以看到工程名,常用功能“清理”和“生成”有快捷按钮。
备注:更多功能右击需要编译的工程名,选项功能介绍如下:
1: “生成”:编译compile
2:“清理”:清除clean
3: “设为活动工程”:快捷键编译方式默认编译活动工程
4: “设置烧录串口号”:输入串口号,如com3,不区分大小写,请确保输入正确且不被占用。
5: “合成分区bin文件”:调用合成分区bin文件.bat,在vscode软件输出窗口命令行运行合成
6: “启动打包升级工具”:启动串口升级工具.exe
7: “烧录user code”:烧录user_code.bin
五、开发体验“智能管家”
该SDK包中的示例工程可以直接编译运行在CI13XX的开发板上,让我们来感受一下离线AI语音识别的奇妙。
1.开发板选择
进入“启英泰伦官方网站”点击“样品购买”
我选了GPIO数量最多的CI1306开发板“CI-D06GT01D”用来开发。(后续可根据实际项目裁剪下来再用引脚更少、性价比更高的其他CI13XX型号芯片开发板或模块)
注册登录后就可以购买了,我发现微信登录更方便购买和联系客服咨询。
到货!到货!开箱组装!
麦克风和喇叭插入对应插槽(开箱清单:CI-D06GT01D开发板x1 ,驻极体麦克风x1 ,喇叭x1, 包装盒 X1)。
取来一根type-c数据线,如图type-c一端连接到模块,另一端连接到电脑的USB接口;
开发板上用跳帽导通UART0
拨动电源开关,接通电源指示灯点亮(发现开发板批次不同,有的是红色电源指示灯,有的是绿色电源指示灯)
电脑打开“设备管理器”会看到电脑给开发板分配的端口号(win7及以下Windows操作系统需要安装CH340串口驱动)
开发板硬件开发环境就搭建完毕了!
2.编译SDK开发包
回到vscode软件开发环境,点击“资源管理器”
检查板极配置,点击打开system文件夹,再点击sdk_default_config.h头文件,检查板极支持配置宏“BOARD_PORT_FILE”是否和开发板型号一致(我买的是CI-D06GT01D开发板,这里宏定义就必须是"CI-D06GT01D.c")
!!!备注:可根据手上开发板型号,修改为其他型号的板极支持配置,可在boards文件夹中进行开发板模块型号的查询
3.生成固件进行烧录
点击CI TOOL工具,首先点击清理图标
然后,点击生成图标进行工程的编译链接,编译完成后会在终端末尾显示“Finished building:…”等打印信息
编译成功后,project/offline_asr_pro_sample/firmware/user_code文件夹中会生成user_code.bin文件
点击CI TOOL工具,鼠标右键工程名,点击“合成分区bin文件”
终端最后输出“output name: mp3\mp3.bin”则表示各个分区的bin文件合成成功
鼠标右键工程名,点击“启动打包升级工具”
有弹窗则选择“是”
“打包升级工具”运行成功,选择芯片系列和具体型号,我这里开发板是CI-D06GT01D,所以芯片系列选“CI130X系列”,具体芯片型号选CI1306,点击“确定”
点击“固件打包”
点击“自动分配”
点击“打包固件”,会弹窗显示“固件已生成”,点击“确定”即可(所生成固件的“软件名称”和“软件版本”我这里默认没变,大家可自行取名)
此时,工具会按“软件名称”和“软件版本”中所填信息在SDK开发包中生成一个可烧录的固件"Firmware_V2.0.0.bin",如下图路径:
点击“固件升级”
确认固件存放的路径正确与否
在电脑为开发板分配的端口号(我这里是COM8,大家根据自己电脑实际情况选择)后面方框中打勾
按下开发板上的复位按钮
“打包升级工具”就会开始将固件烧录到开发板中,有进度显示
当进度显示为100%,打印信息显示“device:update success(-)”时,就会听到开发板播放的欢迎语“欢迎使用智能管家,您可以使用智能管家唤醒我”
这时就可以感受到“智能管家”带来的初体验了。照着下面的指令开始念起来吧!
彩蛋:说“关闭语音”后,说任何词都会“哔”的一声叫哦!
六、总结
在 VS Code 中即可一站式完成代码开发、编译、烧录与调试全流程,这种丝滑的开发体验令人倍感畅快。对于嵌入式开发而言,如此高效集成的环境堪称刚需,由衷感谢前辈们在适配工作中倾注的心血!
接下来,我将正式开启 CI13XX 系列芯片的开发征程。深知前路漫长且挑战重重,但正如 “路漫漫其修远兮,吾将上下而求索” 所言,定当以探索之心全力以赴,深耕技术突破。期待在实践中沉淀更多成果!