手把手教学 | 安信可离线语音VC系列——出厂固件使用(SDK开源)

2022年06月20日 11:18    发布者:安信可科技
最新发布的VC系列离线语音模组,将离线识别算法芯片架构深度融合,为客户提供超低成本的离线语音识别方案。VC系列离线语音模组可广泛且高效地应用于智能家居领域,如各类智能小家电,86盒,智能玩具,智能照明灯等需要语音操控的产品。
一、准备工具二、模组出厂固件使用三、开发板出厂固件使用 四、语音控制流程VC系列一共有2款模组及对应开发板,开发板的出厂固件和模组的出厂固件是不相同的。一、准备工具1.通讯接口连接如果是使用模组进行串口连接的话,建议使用如下接口进行通讯:RX1、TX1。

如果使用开发板,直接用USB 口调试即可,模组与单片机或者TTL模块连接示意:

(注意TX1和RX1不要接反)
UART1默认的串口配置:
[*]波特率:115200
[*]数据位:8
[*]停止位:1
[*]校验位:None
[*]流控制:None
UART0(TX0:IOB8)Log 输出配置
[*]波特率:57600
[*]数据位:8
[*]停止位:1
[*]校验位:None
[*]流控制:None
2.开发板硬件说明VC-01和VC-02共用一款底板:

3.烧录说明VC系列一共有两种烧录方式:
[*]JTAG调试器烧录
JTAG调试器烧录方式,需使用专用的JTAG调试器,烧录完整的固件,使用的软件是:UniOneDownloadTool.exe, 一般固件的文件名为:uni_app_release.bin

[*]串口烧录
串口烧录的方式使用TTL模块进行固件升级,对模块没有任何要求,使用的软件是:UniOneUpdateTool.exe,一般固件的文件名为:uni_app_release_update.bin
两种烧录方式会在下面进行详细的介绍:(1)JTAG烧录接线及烧录介绍JTAG 烧录方式只能使用专用的JTAG调试器,可通过安信可淘宝店购买套件。(不支持使用J-link等调试器烧录)。JTAG调试器与VC系列的连接如下:

连接好之后,把调试器插入电脑(调试器需要安装驱动,安装教程请看:Hummingbird-M-Production-Tool/M_Download_Tool_User_Guide.pdf(在SDK文件夹中查找此文件),打开UniOneDownloadTool.exe:
254296
烧录过程:
2542972)UART串口升级接线及烧录介绍串口烧录的接线和通讯方式的接线相同,烧录的固件有些重点需要注意,小心模块变砖!!!
[*]首次烧录必须先烧录“uni_hb_m_solution\image_demo\Hummingbird-M-Update-Tool”下的uni_app_release.bin 或 uni_app_debug.bin 固件。(出厂固件已烧录)
[*]烧录的固件必须是使用 build.sh update指令生成的uni_app_release_update.bin
[*]注意!烧录工具只能使用:UniOneUpdateTool.exe
下面就开始延时烧录过程:

(注意:所有端口号成功打开时,背景颜色会是黄色的)二、模组出厂固件使用1.指令词及指令码模组出厂固件中,默认写入了一些通用的指令及其对应的指令码。2.指令码说明每个指令码的都代表了VC当前所识别的指令,指令中的含义:以 “0x5a 0x00 0x00 0x00 0x5a” 为例起始位:为固定值:0x5a
指令序号:代表唯一的指令:0x00为唤醒词的序号保留位1:固定值为:0x00保留位2:固定值为:0x00校验位:前四位的异或值,0x5aXOR0x00XOR0x00XOR0x00=0x5a三、开发板出厂固件使用开发板出厂固件的指令词和模组的一样,只是加入了LED控制功能及按键唤醒功能:

四、语音控制流程
其它说明开发板出厂固件使用出厂固件已经具备一些实用指令,单片机可以根据对应的指令码做相应的处理。指令码最重要的一个字节就是校验位,在C语言中可以这么做:

[*]
[*]
[*]
[*]
[*]
[*]
[*]
//假如判断唤醒:0x5a 0x00 0x00 0x00 0x5achar start_bit=0x5a;char cmd_num_bit=0x00;char temp_num1_bit=0x00;char temp_num2_bit=0x00;//计算校验位char check_bit=start_bit^cmd_mun_bit^temp_num1_bit^temp_num2_bit;