当前位置: 首页 > news >正文

走进离线语音:安信可 VC‑01 智能模块全面拆解与 MCU 实战

今天带大家认识一款性价比极高的中文语音识别模块——安可信VC-01智能语音识别模块。不仅适合AI初学者入门,也是嵌入式开发人员做语音控制项目的利器!本文将结合VC-01的官方规格书内容、功能特点,并结合MUC主控芯片(如STM32、ESP32)进行项目实战讲解。

一、什么是VC-01语音模块?

VC-01 是安可信(Acontech)推出的一款高性能、低功耗的离线语音识别模块,适合嵌入式语音交互应用。它最大的优势是:

  • 支持离线关键词识别
  • 无需联网即可实现语音控制
  • 支持多种命令词组定制
  • 语音识别响应时间快,抗干扰强
  • 支持UART串口通信,适配各种主控芯片

二、核心参数

参数描述
主芯片US516P6(32-bit RISC 内核,240 MHz,DSP 指令 & FPU + FFT 加速器)
存储2 MB Flash,242 KB SRAM
识别能力支持 150 条本地指令,唤醒距离达 5 m,识别率 ≥ 98%,响应时间 < 100 ms
音频性能单 MIC 输入,双通道 DAC 输出,内置 AEC 及降噪算法
接口UART、I²C、PWM、GPIO、SPI、DAC
工作电压3.6–5 V,电流 > 500 mA,温度范围 –40~85 ℃
外形尺寸模块体积约 25.5 × 24 × 3.2 mm,开发板约 42.2 × 35.6 mm

三、VC-01模块引脚定义

引脚功能说明
VCC电源(3.3V 或 5V)
GND
RXD接收串口数据(接主控TX)
TXD发送串口数据(接主控RX)
EN模块使能(低电平有效)
K1/K2/K3用户自定义按键输入(可触发语音识别)

安信可语音开发平台的使用

首先进入http://voice.ai-thinker.com

该网址进行注册后,显示该页面

之后点击左上角的创建产品,然后进入到下面页面

然后我们在选择产品类别,选择其他,接着进入下面该页面

我们选择纯离线方案,

然后选择VC-01模组,

之后写入我们产品名称,与语言,下面是我们写好的

点击保存

然后就来到语音配置界面

注意这里,我们应该选择为串口烧录,应该一般该模组没有ST-Link SWD烧录,所以选择为串口

接着下滑,我们就可以配置唤醒词自定义

到了这里,就是可以设置我们想要配置自己主控上的设备,下面给你们举个例子。

案例展示

我们首先先添加一条基础信息,

添加完这个基础信息后还要进行一个控制详情,就是以下图

基本就这样了,挺简单的,网上学习资料有很多,大家多多交流一下

四、STM32 控制代码(标准外设库实现)

1️⃣ 串口初始化代码(USART1)

void USART1_Init(void)
{RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA, ENABLE);// PA9 = TX, PA10 = RXGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, &GPIO_InitStructure); USART_InitTypeDef USART_InitStructure;USART_InitStructure.USART_BaudRate = 115200;USART_InitStructure.USART_WordLength = USART_WordLength_8b;USART_InitStructure.USART_StopBits = USART_StopBits_1;USART_InitStructure.USART_Parity = USART_Parity_No;USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;USART_Init(USART1, &USART_InitStructure);USART_Cmd(USART1, ENABLE);
}


 


2️⃣ 串口接收数据解析

uint8_t VC01_ReceiveBuffer[64];
uint8_t index = 0;
void USART1_IRQHandler(void)
{if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET){uint8_t data = USART_ReceiveData(USART1);VC01_ReceiveBuffer[index++] = data;// 示例协议格式:0xAA 0x55 CMD_IDif (index >= 3){if (VC01_ReceiveBuffer[0] == 0xAA && VC01_ReceiveBuffer[1] == 0x55){uint8_t cmd = VC01_ReceiveBuffer[2];VC01_ExecuteCommand(cmd);}index = 0;}}
}

3️⃣ 控制灯光或继电器(GPIO 控制)


void VC01_ExecuteCommand(uint8_t cmd)
{switch (cmd){case 0x01:  // 语音命令:“打开灯”GPIO_SetBits(GPIOC, GPIO_Pin_13);  // 点亮LEDbreak;case 0x02:  // “关闭灯”GPIO_ResetBits(GPIOC, GPIO_Pin_13);  // 熄灭LEDbreak;default:break;}
}
http://www.xdnf.cn/news/950761.html

相关文章:

  • Open3D 对点云进行去噪(下采样、欧式聚类分割)01
  • 【论文阅读】大模型优化器(Large Language Models As Optimizers)
  • 第一章-数据通信网络基础
  • 无需布线的革命:电力载波技术赋能楼宇自控系统-亚川科技
  • 删除远程已经不存在但本地仍然存在的Git分支
  • AWS EKS 集群日志上报观测云实践
  • 1.6 http模块nodejs 对比 go
  • 【字节拥抱开源】字节团队开源视频模型 ContentV: 有限算力下的视频生成模型高效训练
  • 安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(质检)
  • 浅谈 ST 表(Sparse Table,稀疏表)
  • 基于ffmpeg+sdl的audio player
  • uniapp 实现腾讯云IM群文件上传下载功能
  • 基于亚博K210开发板——WiFi 模块联网
  • C语言 学习 文件操作(开关,读写,定位,大小)操作 2025年6月8日12:19:24
  • C语言 学习 模块化编程 2025年6月9日19:39:17
  • 论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
  • 触发DMA传输错误中断问题排查
  • Redis哨兵模式以及主从
  • LLM基础5_从零开始实现 GPT 模型
  • CMIP6气候模式资料概览
  • 免费在线PDF转图片工具
  • gephi绘制网络拓扑图:批量给节点着色
  • nginx安装和部署
  • 免费PDF转图片工具
  • NVIDIA CUDA 技术详解:开启 GPU 并行计算的大门
  • CocosCreator 之 JavaScript/TypeScript和Java的相互交互
  • 创建型模式-单例模式
  • Python网页自动化Selenium中文文档
  • 24.解释器模式:思考与解读
  • 从零手写Java版本的LSM Tree (四):SSTable 磁盘存储