1.海凌科離線語(yǔ)音模塊百科
??HLK-V20-SUIT是海凌科電子推出的一款高性能純離線語(yǔ)音識(shí)別模塊,專為智能家居、智能小家電及物聯(lián)網(wǎng)設(shè)備設(shè)計(jì),憑借其高性價(jià)比、靈活定制化和低功耗特性,成為語(yǔ)音控制領(lǐng)域的熱門選擇。該模塊采用32位RSIC架構(gòu)核心,集成DSP指令集、FPU浮點(diǎn)運(yùn)算單元及FFT加速器,通過神經(jīng)網(wǎng)絡(luò)算法對(duì)音頻信號(hào)進(jìn)行深度訓(xùn)練,顯著提升語(yǔ)音識(shí)別準(zhǔn)確率,在安靜環(huán)境下識(shí)別率超過95%,即使在辦公室或音樂播放等嘈雜場(chǎng)景中,仍能保持75%以上的識(shí)別率,誤喚醒率低于1次/24小時(shí),確保設(shè)備穩(wěn)定響應(yīng)。支持150條本地指令存儲(chǔ),用戶可通過海凌科語(yǔ)音定制后臺(tái)系統(tǒng)自由配置喚醒詞、命令詞及應(yīng)答語(yǔ),無(wú)需復(fù)雜編程即可快速生成專屬SDK,滿足個(gè)性化需求。模塊提供UART、GPIO、PWM等豐富接口,可輕松連接動(dòng)圈揚(yáng)聲器、駐極體麥克風(fēng)等外圍設(shè)備,僅需少量外圍元件即可實(shí)現(xiàn)語(yǔ)音交互功能,開發(fā)周期短,成本可控。其工作電壓為5V,平均待機(jī)功耗僅63mA,工作電流約60mA,適合電池供電場(chǎng)景,如智能門鎖、無(wú)線音箱等設(shè)備。
??該模塊尺寸緊湊(封裝模塊設(shè)計(jì)),便于集成到各類產(chǎn)品中,尤其適用于空間受限的設(shè)備。其應(yīng)用場(chǎng)景廣泛,涵蓋智能家居(如語(yǔ)音控制風(fēng)扇、插座、燈泡、空調(diào))、智能小家電(如智能茶壺、故事機(jī)、掃地機(jī))、工業(yè)控制(如設(shè)備語(yǔ)音操作)、醫(yī)療監(jiān)護(hù)(如語(yǔ)音呼叫系統(tǒng))等領(lǐng)域。例如,用戶可通過語(yǔ)音指令“打開空調(diào)”或“調(diào)暗燈光”,無(wú)需手動(dòng)操作,提升生活便捷性;在工業(yè)場(chǎng)景中,工人可通過語(yǔ)音控制設(shè)備啟動(dòng)或停止,提高作業(yè)效率。支持離線識(shí)別,無(wú)需聯(lián)網(wǎng)即可使用,避免了網(wǎng)絡(luò)延遲或斷網(wǎng)導(dǎo)致的功能失效問題,同時(shí)保護(hù)用戶隱私數(shù)據(jù)。此外,模塊兼容輕量級(jí)RTOS系統(tǒng),資源占用低,運(yùn)行穩(wěn)定,適合資源有限的嵌入式設(shè)備。對(duì)于開發(fā)者而言,海凌科提供詳細(xì)的技術(shù)文檔和開發(fā)工具,降低開發(fā)門檻,加速產(chǎn)品上市。
??綜合來(lái)看,HLK-V20-SUIT以高性能、低功耗、易定制和廣適配性為核心優(yōu)勢(shì),為語(yǔ)音控制設(shè)備提供了可靠的解決方案。無(wú)論是追求性價(jià)比的智能家居廠商,還是需要快速迭代的物聯(lián)網(wǎng)開發(fā)者,該模塊均能滿足需求,助力產(chǎn)品實(shí)現(xiàn)智能化升級(jí)。
??模組實(shí)物如下:

2.HLK-V20-SUIT模組集成
??HLK-V20-SUIT模組采用串口通訊方式,語(yǔ)音詞條響應(yīng)成功通過串口返回應(yīng)答信息,其硬件接口設(shè)計(jì)如下:

??該模組采用5V供電,自帶功放電路,直接接入揚(yáng)聲器(8Ω1W)即可輸出,麥克風(fēng)輸入也無(wú)需外置處理電路,直接接入即可,靈敏度為-38DB。硬件實(shí)物如圖所示:

3.HLK-V20-SUIT自制語(yǔ)音詞條
3.1 創(chuàng)建產(chǎn)品
HLK-V20-SUIT模組支持自定義語(yǔ)音詞條,登錄海凌科官網(wǎng),注冊(cè)賬號(hào)。海凌科官網(wǎng)地址:[海凌科官網(wǎng)地址](https://www.hlktech.com/)

??滑動(dòng)到最下面可看到語(yǔ)音定制系統(tǒng)。

??進(jìn)行賬號(hào)注冊(cè),登錄平臺(tái)。

??選中產(chǎn)品接入,完成產(chǎn)品創(chuàng)建。

??選中產(chǎn)品接入,完成產(chǎn)品創(chuàng)建。

3.2 創(chuàng)建SDK


3.3 設(shè)置語(yǔ)言詞條信息
??1.設(shè)置前端信號(hào)處理。

??2.設(shè)置串口通訊參數(shù)

??3.設(shè)置語(yǔ)音喚醒詞條

??4.設(shè)置離線詞條信息

??5.設(shè)置應(yīng)答返回?cái)?shù)據(jù)格式

??6.發(fā)音和音量設(shè)置

??7.其他設(shè)置

??8.發(fā)布SDK,發(fā)布成功即可下載SDK包

4.SDK離線包固件燒寫??
1.下載固件燒寫工具。下載地址:[固件燒寫工具](https://h.hlktech.com/Mobile/download/FDetail/93.html)

??2.本系統(tǒng)板已預(yù)留固件升級(jí)接口,接口電路如下:


??在硬件失實(shí)物上,C_RX與PA9連接、TX與PA10連接則是給STM32系統(tǒng)板燒寫程序;C_RX與H_RX連接、TX與H_TX連接則是給海凌科模組燒寫固件。因此本次需要將跳線帽將C_RX與H_RX連接、TX與H_TX連接。
??在下載的SDK包中“uni_hb_m_solution-xxxx-xxxx”目錄下的uni_app_debug_update.bin 和uni_app_release_update.bin 是用于 usb 升級(jí)的固件。usb升級(jí)的固件不能有中文路徑。
4.2 驅(qū)動(dòng)安裝
??使用Type-C數(shù)據(jù)線與開發(fā)板連接,識(shí)別成功將自動(dòng)識(shí)別到COM口。

??選中好要燒寫的uni_app_release_update.bin 文件。

??點(diǎn)擊燒錄按鈕, 如圖所示,提示欄顯示等待設(shè)備。(注意:此時(shí)設(shè)備不要上電)。

??如下圖為海凌科模組供電引腳,點(diǎn)擊燒錄前先拔掉該跳線帽,出現(xiàn)等待設(shè)備后再插上該跳線帽。

??下載完成如下:

??至此,固件燒寫完成。
5.模塊驅(qū)動(dòng)
HLK-V20模塊采用串口串口2驅(qū)動(dòng),串口通訊波特率為115200,數(shù)據(jù)幀格式為1bit起始信號(hào)+8bit數(shù)據(jù)位+1bit停止信號(hào),無(wú)校驗(yàn)位。驅(qū)動(dòng)程序如下:
/*
串口初始化
形參:USARTx --要初始化的串口(USART1、USART3、USART2)
buad --要設(shè)置的波特率
*/
void USARTx_Init(USART_TypeDef *USARTx,u32 buad)
{
if(USARTx == USART1)
{
//1.開時(shí)鐘
RCC->APB2ENR|=1<2;//PA
RCC-?>APB2ENR|=1<14;//usart1
RCC-?>APB2RSTR|=1<14;//復(fù)位時(shí)鐘
RCC-?>APB2RSTR&=~(1<14);//取消復(fù)位
//2.配置GPIO
GPIOA-?>CRH&=0xFFFFF00F;
GPIOA->CRH|=0x000008B0;
USART1->BRR=72000000/buad;//設(shè)置波特率
#ifdef USART1_IRQ
USART1->CR1|=1<4;//IDLE空閑幀中斷
USART1-?>CR1|=1<5;//串口接收中斷使能
STM32_SetNVICPriority(1,1,USART1_IRQn);//設(shè)置優(yōu)先級(jí),使能中斷線
#endif
}
else if(USARTx == USART2)
{
/*1.開時(shí)鐘*/
RCC-?>APB2ENR|=1<2;//PA時(shí)鐘
RCC-?>APB1ENR|=1<17;//USART2時(shí)鐘
RCC-?>APB1RSTR|=1<17;//開復(fù)位時(shí)鐘
RCC-?>APB1RSTR&=~(1<17);//取消復(fù)位
/*2.配置GPIO口*/
GPIOA-?>CRL&=0xFFFF00FF;//清除原來(lái)寄存器中的值
GPIOA->CRL|=0x00008B00;
//3.配置串口3核心功能
USART2->BRR=36000000/buad;//波特率
#ifdef USART2_IRQ
USART2->CR1|=1<5;//串口2接收中斷
USART2-?>CR1|=1<4;//空閑幀中斷
STM32_SetNVICPriority(1,1,USART2_IRQn);//設(shè)置優(yōu)先級(jí)
#endif
}
else if(USARTx == USART3)
{
//1.開時(shí)鐘
RCC-?>APB2ENR|=1<3;//PB
RCC-?>APB1ENR|=1<18;//USART3
RCC-?>APB1RSTR|=1<18;//復(fù)位時(shí)鐘
RCC-?>APB1RSTR&=~(1<18);//取消復(fù)位
//2.配置GPIO
GPIOB-?>CRH&=0xFFFF00FF;
GPIOB->CRH|=0x00008B00;
//3.配置串口3核心功能
USART3->BRR=36000000/buad;//波特率
#ifdef USART3_IRQ
USART3->CR1|=1<4;//IDLE空閑幀中斷
USART3-?>CR1|=1<5;//串口接收中斷使能
STM32_SetNVICPriority(1,1,USART3_IRQn);//設(shè)置優(yōu)先級(jí),使能中斷線
#endif
}
USARTx-?>CR1|=1<3;//使能發(fā)送
USARTx-?>CR1|=1<2;//使能接收
USARTx-?>CR1|=1<13;//使能串口
}
u8 usart2_buffer[1024];//串口1接收數(shù)據(jù)緩沖區(qū)
u16 usart2_cnt=0;//保存數(shù)組下班
u8 usart2_flag;//接收完成標(biāo)志符
void USART2_IRQHandler(void)
{
u8 c;
if(USART2-?>SR&1<5)//判斷是否接收中斷觸發(fā)
{
c=USART2-?>DR;
// USART1->DR=c;
if(usart2_flag==0)//判斷上一次數(shù)據(jù)是否處理完成
{
if(usart2_cnt1024)
{
usart2_buffer[usart2_cnt++]=c;
}
else usart2_flag=1;
}
}
if(USART2-?>SR&1<4)
{
c=USART2-?>DR;
c=c;
usart2_flag=1;
}
}
主函數(shù):
#include "stm32f10x.h"
#include "delay.h"
#include "led.h"
#include "key.h"
#include "usart1.h"
#include "timer.h"
#include "esp8266.h"
#include "oled.h"
#include "rtc.h"
#include
#include
#include
int main()
{
LED_Init();//LED
Key_Init();
USARTx_Init(USART1,115200);//一個(gè)字符的收發(fā)時(shí)間:1s/(115200/10)=86us
USARTx_Init(USART2,115200);
USARTx_Init(USART3,115200);
OLED_Init();
OLED_DispalyFont(32,0,16,font_16[0]);
OLED_DispalyFont(32+16,0,16,font_16[1]);
OLED_DispalyFont(32+16*2,0,16,font_16[2]);
OLED_DispalyFont(32+16*3,0,16,font_16[3]);
OLED_Refresh();
RTC_Init();
u16 key=0;
while(1)
{
if(usart2_flag)
{
if(usart2_cnt==3)
{
if(usart2_buffer[0]==0x77 && usart2_buffer[2]==0x0a)
{
switch(usart2_buffer[1])
{
case 1://開燈
LED1=0;
break;
case 7://關(guān)燈
LED1=1;
break;
}
}
}
// printf("rx2=%s,%dn",usart2_buffer,usart2_cnt);
usart2_flag=0;
usart2_cnt=0;
}
}
}
??
-
STM32
+關(guān)注
關(guān)注
2309文章
11161瀏覽量
373364 -
串口
+關(guān)注
關(guān)注
15文章
1618瀏覽量
82790 -
語(yǔ)音識(shí)別
+關(guān)注
關(guān)注
39文章
1812瀏覽量
116037 -
系統(tǒng)板
+關(guān)注
關(guān)注
0文章
10瀏覽量
6497
發(fā)布評(píng)論請(qǐng)先 登錄
基于STM32的智慧物聯(lián)網(wǎng)系統(tǒng)板
#物聯(lián)網(wǎng) ASR離線智能語(yǔ)音模塊應(yīng)用落地?zé)?,可定制,支持小語(yǔ)種,也支持方言#語(yǔ)音識(shí)別 #物聯(lián)網(wǎng) #語(yǔ)音模塊
離線語(yǔ)音控制模塊,智能家居開發(fā)#物聯(lián)網(wǎng) #語(yǔ)音控制 #語(yǔ)音模塊 #語(yǔ)音識(shí)別
語(yǔ)音控制選擇離線還是在線呢?#物聯(lián)網(wǎng) #語(yǔ)音模塊 #語(yǔ)音控制 #語(yǔ)音識(shí)別
【Tisan物聯(lián)網(wǎng)申請(qǐng)】智慧農(nóng)場(chǎng)物聯(lián)網(wǎng)
【Nuvoton ISD9160語(yǔ)音識(shí)別申請(qǐng)】基于語(yǔ)音識(shí)別的老人突發(fā)情況報(bào)警系統(tǒng)
【NXP LPC54110試用申請(qǐng)】TreeOS物聯(lián)網(wǎng)實(shí)時(shí)操作系統(tǒng)語(yǔ)音識(shí)別底層驅(qū)動(dòng)
物聯(lián)網(wǎng)在智慧醫(yī)療領(lǐng)域的應(yīng)用有哪些?
物聯(lián)網(wǎng)卡在智慧農(nóng)業(yè)的應(yīng)用有哪些?
乘物聯(lián)網(wǎng)之風(fēng),智慧物流發(fā)展邁向新臺(tái)階
基于機(jī)智云物聯(lián)網(wǎng)技術(shù)的寢室系統(tǒng)設(shè)計(jì)
STM32F103C8T6 LD3320語(yǔ)音識(shí)別模塊非特定識(shí)別人聲 離線控制 智能家居 開發(fā)板
離線語(yǔ)音模塊的應(yīng)用
智能語(yǔ)音開關(guān)面板:離線語(yǔ)音模塊的魅力與應(yīng)用
物聯(lián)網(wǎng)系統(tǒng)智能控制產(chǎn)品的語(yǔ)音識(shí)別方案_離線語(yǔ)音識(shí)別芯片分析
基于STM32的智慧物聯(lián)網(wǎng)系統(tǒng)板---離線語(yǔ)音模塊使用
評(píng)論