最新发布的VC系列离线语音模组,将离线识别算法与芯片架构深度融合,为客户提供超低成本的离线语音识别方案。
VC系列离线语音模组可广泛且高效地应用于智能家居领域,如各类智能小家电,86盒,智能玩具,智能照明灯等需要语音操控的产品。
VC系列模组/开发板已上架至安信可天猫旗舰店和官方淘宝店。
已经收到的小伙伴跟着我们的教程用起来吧!
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:
烧录过程:
2)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 0x5a
char 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;