LD3320語音識別模塊簡介
基于 LD3320,可以在任何的電子產品中,甚至包括最簡單的 51 作為主控芯片的系統中,輕松實現語音識別/聲控/人機對話功能。為所有的電子產品增加 VUI(Voice User Interface)語音用戶操作界面。
主要特色功能:
1.非特定人語音識別技術: 不需要用戶進行錄音訓練可動態編輯的識別關鍵詞語列表: 只需要把識別的關鍵詞語以字符串的形式傳送進芯片,即可以在下次識別中立即生效。比如,用戶在 51 等 MCU 的編程中,簡單地通過設置芯片的寄存器,把諸如“你好”這樣的識別關鍵詞的內容動態地傳入芯片中,芯片就可以識別這樣設定的關鍵詞語了。
2.真正單芯片解決方案:不需要任何外接的輔助Flash 和RAM,真正降低系統成本。內置高精度A/D和D/A通道:不需要外接AD 芯片,只需要把麥克風接在芯片的AD 引腳上;可以播放聲音文件,并提供550mW 的內置放大器。高準確度和實用的語音識別效果。
3.支持用戶自由編輯50 條關鍵詞語條:在同一時刻,最多在50 條關鍵詞語中進行識別,終端用戶可以根據場景需要,隨時編輯和更新這50 條關鍵詞語的內容。詞組或短句,長度為不超過 10 個漢字或者 79 個字節的拼音串。
主要技術參數:
1.內置單聲道mono 16-bitA/D 模數轉換
2. 內置雙聲道stereo 16-bit D/A數模轉換
3. 內置20mW 雙聲道耳機放大器輸出
4. 內置550mW 單聲道揚聲器放大器輸出
5. 支持并行接口或者SPI 接口
6. 內置鎖相電路PLL,輸入主控時鐘頻率為2MHz -34MHz
模塊引腳定義
P1:MIC麥克風插座,板載了MIC咪頭可不用接
P2:SPEAK喇叭輸出
兩組VCC均為3.3V,一組5V均可給模塊供電,實際只需接一組即可
MO:SPI接口的MOSI
MI:SPI接口的MISO
SCK:SPI接口的時鐘引腳
CS:SPI接口的片選引腳
RST:復位引腳,低電平有效
IRQ:中斷輸出引腳,低有效
WR:寫允許共用SPI允許,低電平有效
STM32F103ZET6開發板與模塊接線
STM32 | LD3320 |
---|---|
CS | PA4 |
IRQ | PB12 |
SCK | PA5 |
WR | PB13 |
MO | PA7 |
RST | PB15 |
MI | PA6 |
測試代碼
用戶只需修改幾處代碼,便可以增加新的指令。
1.LD2230_config.h 文件中,增加相應的識別碼。(必須)
///識別碼(客戶修改處)
#define CODE_LSD 1 //流水燈
#define CODE_SS 2 //閃爍
#define CODE_AJCF 3 //按鍵觸發
#define CODE_QM 4 //全滅
#define CODE_JT 5 //狀態
2.LD2230.c 文件中,在 LD3320_main 函數中增加相印分支。(必須)
switch(nAsrRes) //對結果執行相關操作,客戶修改
{
case CODE_LSD: //命令“流水燈”
printf(" 流水燈 指令識別成功rn");
break;
case CODE_SS: //命令“閃爍”
printf(" 閃爍 指令識別成功rn");
break;
case CODE_AJCF: //命令“按鍵觸發”
printf(" 按鍵觸發 指令識別成功rn");
break;
case CODE_QM: //命令“全滅”
printf(" 全滅 指令識別成功rn");
break;
case CODE_JT: //命令“狀態”
printf(" 狀態 指令識別成功rn");
default:break;
}
3.LD2230.c 文件中,在 LD_AsrAddFixed 函數中修改相應代碼。(必須)DATA_A 為指令的個數, DATA_B 為指令的最大長度, sRecog 二維數組為相應指令的拼音集合(注意空格)。pCode 為指令識別碼的集合。
#define DATE_A 5 //數組二維數值
#define DATE_B 20 //數組一維數值
//添加關鍵詞,用戶修改
uint8 sRecog[DATE_A][DATE_B] = {
"liu shui deng",
"shan shuo",
"an jian chu fa",
"quan mie",
"zhuang tai"
};
uint8 pCode[DATE_A] = {
CODE_LSD,
CODE_SS,
CODE_AJCF,
CODE_QM,
CODE_JT
}; //添加識別碼,用戶修改
4.LD2230.c 文件中,在 LD3320_main 函數中修改相應代碼。(建議)
///識別碼(客戶修改處)
printf("1、流水燈rn");
printf("2、閃爍rn");
printf("3、按鍵觸發rn");
printf("4、全滅rn");
printf("5、狀態rn");
5.LD2230.c 文件中,在 Board_text 函數中修改相應代碼。(建議)
static void Board_text(uint8 Code_Val)
{
switch(Code_Val) //對結果執行相關操作
{
case CODE_LSD: //命令“流水燈”
Glide_LED();
break;
case CODE_SS: //命令“閃爍”
Flicker_LED();
break;
case CODE_AJCF: //命令“按鍵觸發”
Key_LED();
break;
case CODE_QM: //命令“全滅”
Off_LED();
break;
case CODE_JT: //命令“狀態”
Jt_LED();
break;
default:break;
}
}
實驗結果
通過STM32串口1通過USB轉串口模塊連接到電腦,打開串口助手軟件,波特率設為115200,將顯示以下內容,然后對著咪頭說“流水燈”、“閃爍”、“按鍵觸發”、“全滅”、“狀態”命令詞,串口助手顯示出對應命令詞識別成功。
-
mcu
+關注
關注
146文章
17918瀏覽量
362791 -
語音識別
+關注
關注
39文章
1778瀏覽量
114075 -
STM32F103
+關注
關注
33文章
483瀏覽量
65315 -
LD3320
+關注
關注
8文章
30瀏覽量
40760
發布評論請先 登錄
LD3320嵌入式語音識別系統應用

使用STM32和LD3320實現語音識別的垃圾分類設計

STM32F103C8T6 LD3320語音識別模塊非特定識別人聲 離線控制 智能家居 開發板

STM32F103RCT語音模塊LD3320

評論