IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 【离线语音专题①】安信可最新离线语音模组VC系列出厂固件使用教程——SDK开源? -> 正文阅读

[嵌入式]【离线语音专题①】安信可最新离线语音模组VC系列出厂固件使用教程——SDK开源?


前言

???????安信可最新发布的VC系列离线语音模组,采用云知声方案,在语音识别技术上不断优化和创新算法,离线识别算法与芯片架构深度融合,为客户提供超低成本的离线语音识别方案,可广泛且快速应用于智能家居,各类智能小家电,86盒,玩具,灯具等需要语音操控的产品。具体的性能:

  • 支持唤醒词自学习(意思是不用编程就可以增加唤醒词)
  • 支持中英文(不同固件)
  • 1~5m 远场 90%识别率
  • 支持RTOS轻量级系统
  • 支持GPIO控制,UART、IIC、SPI等通讯协议
  • 支持串口升级

???????VC系列一共有两款模组及其开发板,开发板的出厂固件和模组的出厂固件是不相同的。

产品型号供电要求封装尺寸默认通讯接口
VC-01模组3.6-5V,I>500mASMD-2425.5243.2(±0.2)mmUART1
VC-02模组3.6-5V,I>500mASMD-2018173.2(±0.2)mmUART1
VC-02-Kit开发板5V,I>500mADIP-1942.2*35.6(±0.2)mmUART1
VC-01-Kit开发板5V,I>500mADIP-1942.2*35.6(±0.2)mmUART1

一、使用前准备

1.通讯接口连接

???????如果是使用模组进行串口连接的话,建议使用如下接口进行通讯:RX1、TX1。
在这里插入图片描述
如果使用开发板,直接用USB 口调试就好了,模组与单片机或者TTL模块连接示意:
在这里插入图片描述

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),打开UniOneDownloadTool.exe:
在这里插入图片描述
烧录过程:
在这里插入图片描述

(2)UART串口升级接线及烧录介绍

???????串口烧录的接线和通讯方式的接线相同,没有特别要注意的。最重要的是所烧录的固件有些要求:

  • 首次烧录必须先烧录“uni_hb_m_solution\image_demo\Hummingbird-M-Update-Tool”下的uni_app_release.binuni_app_debug.bin 固件。(出厂固件已烧录)
  • 烧录的固件必须是使用 build.sh update指令生成的uni_app_release_update.bin
  • 烧录工具只能使用:UniOneUpdateTool.exe

下面就开始延时烧录过程:
在这里插入图片描述
在这里插入图片描述

注意:所有端口号成功打开背景颜色会是黄色的

二、模组出厂固件使用

1.指令词及指令码

???????模组出厂固件中,默认写入了一些通用的指令及其对应的指令码。

指令词指令码(十六进制输出)回应词
小安小安|小安同学|你好小安0x5a 0x0 0x0 0x0 0x5a主人,你说|我在,你说|在呢
退下|再见0x5a 0x01 0x00 0x00 0x5b有需要再叫我
打开台灯|请开灯|开灯|打开灯|我回来了0x5a 0x02 0x00 0x00 0x5c已为您打开照明
关闭台灯|请关灯|关灯|睡觉了|关上灯|我出去了0x5a 0x03 0x00 0x00 0x5d已为您关闭照明
调亮一点|亮一点0x5a 0x04 0x00 0x00 0x5e灯光已调亮
调暗一点|暗一点0x5a 0x05 0x00 0x00 0x5f灯光已调暗
调到最亮|灯光最亮0x5a 0x06 0x00 0x00 0x60已调到最亮
调到最暗|灯光最暗0x5a 0x07 0x00 0x00 0x61已调到最暗
延时关灯|三十分钟后关灯0x5a 0x08 0x00 0x00 0x62三十分钟后为您关闭照明
十分钟后关灯0x5a 0x09 0x00 0x00 0x63十分钟后为您关闭照明
二十分钟后关灯0x5a 0x0a 0x00 0x00 0x64二十分钟后为您关闭照明
四十分钟后关灯0x5a 0x0b 0x00 0x00 0x65四十分钟后为您关闭照明
五十分钟后关灯0x5a 0x0c 0x00 0x00 0x66五十分钟后为您关闭照明
六十分钟后关灯0x5a 0x0d 0x00 0x00 0x67六十分钟后为您关闭照明
取消定时0x5a 0x0e 0x00 0x00 0x68定时关灯已取消
打开空调0x5a 0x0f 0x00 0x00 0x69空调已打开
关闭空调0x5a 0x10 0x00 0x00 0x6a空调已关闭
打开风扇0x5a 0x11 0x00 0x00 0x6b已为您打开风扇
关闭风扇0x5a 0x12 0x00 0x00 0x6c已为您关闭风扇
打开冷光|调成冷光0x5a 0x13 0x00 0x00 0x6d已为您打开冷光
关闭冷光|关掉冷光0x5a 0x14 0x00 0x00 0x6e已为您关闭冷光
打开暖光|调成暖光0x5a 0x15 0x00 0x00 0x6f已为您打开暖光
关闭暖光|关掉暖光0x5a 0x16 0x00 0x00 0x70已为您关闭暖光
开始学习0x5a 0x17 0x00 0x00 0x71开始学习唤醒词…
重置学习0x5a 0x18 0x00 0x00 0x72学习数据已重置
命令词学习0x5a 0x19 0x00 0x00 0x73开始学习演示命令…
唤醒词学习0x5a 0x1a 0x00 0x00 0x74开始学习唤醒词…
清除学习命令词0x5a 0x1b 0x00 0x00 0x75命令词学习数据已清除
清除学习唤醒词0x5a 0x1c 0x00 0x00 0x76唤醒词学习数据已清除

2.指令码说明

???????每个指令码的都代表了VC当前所识别的指令,指令中的含义:以 “0x5a 0x00 0x00 0x00 0x5a” 为例

起始位指令序号保留位1保留位2校验位
0x5a0x000x000x000x5a
  • 起始位:为固定值:0x5a
  • 指令序号:代表唯一的指令:0x00 为唤醒词的序号
  • 保留位1:固定值为:0x00
  • 保留位2:固定值为:0x00
  • 校验位:前四位的异或值,0x5aXOR0x00XOR0x00XOR0x00=0x5a

三、开发板出厂固件使用

???????开发板出厂固件的指令词和模组的一样,只是加入了LED控制功能及按键唤醒功能:
在这里插入图片描述

四、语音控制流程

Created with Rapha?l 2.3.0 开始 说唤醒词 说指令词 是否自动退出 结束 yes no

五、总结

???????出厂固件已经具备了很不错的指令,单片机可以根据对应的指令码做相应的处理。指令码最重要的一个字节就是校验位,在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;

???????最重要的来了,到底支不支持二次开发?其实这篇文章中已经说得很清楚了。
在这里插入图片描述

六、友情链接

官方官网:https://www.ai-thinker.com
开发DOCS:https://docs.ai-thinker.com
官方论坛:http://bbs.ai-thinker.com
技术支持:support@aithinker.com

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-05-01 15:55:12  更:2022-05-01 15:56:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 0:46:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码