2021-08-20 12:34:34 索煒達電子 1249
項目編號:E381
文件大?。?.11M
源碼說明:帶中文注釋
開發(fā)環(huán)境:C編譯器
簡要概述:
1.背景
隨著人工智能市場規(guī)模持續(xù)增長,智能語音將居于重要地位。
智能語音設(shè)備可以實現(xiàn)自主學習,融入家庭,扮演陪伴者角色,并且極大提高人們的生活效率,還使得難以自理的群體,讓他們的生活更方便。
2.Hardware
2.1 LD3320語音識別模塊
LD3320 芯片是一款“語音識別”專用芯片。該芯片集成了語音識別處理器 和一些外部電路,包括 AD、DA 轉(zhuǎn)換器、麥克風接口、聲音輸出接口等。本芯片 不需要外接任何的輔助芯片如 Flash、RAM 等,直接集成在現(xiàn)有的產(chǎn)品中即可以 實現(xiàn)語音識別/聲控/人機對話功能。并且,識別的關(guān)鍵詞語列表是可以任意動態(tài)編輯的。
一體化語音識別模塊是基于STC11 單片機和LD3320 語音芯片組合而成的一款語音識別模塊,此模塊具備一個 5V TTL 串口和 16 個 IO 口引出,可與外部單片機進行通信交互信息。
2.2 STM32
主驅(qū)一體板是基于 STM32F103C8T6 單片機進行硬件電路設(shè)計,主要包括 STM32 最小系統(tǒng)電路、OLED 顯示電路,驅(qū)動電路,串行口接口電路,電源電路等。
2.3連接示意圖
一體化語音識別模塊是基于STC11 單片機和LD3320 語音芯片組合而成的一款語音識別模塊,此模塊具備一個 5V TTL 串口和 16 個 IO 口引出,可與外部單片機進行通信交互信息。
3.Software
選用 LD3320 語音識別芯片采樣識別到的業(yè)務(wù)存儲在 LD3320 寄存器中,并連接 STC11 單片機,應(yīng)用串口發(fā)送到 STM32F103C8T6 的單片機進行處理,需完成系統(tǒng)界面設(shè)計,識別并處理語音模塊發(fā)送的開機、關(guān)機、一級界面與二級界面的切換、LED 燈的點亮、電機的轉(zhuǎn)動與停止、調(diào)速等指令。
3.1系統(tǒng)整體流程圖
3.2 LD3320語音模塊程序流程圖
文件列表:
目錄│文件列表:
└ Intelligent-speech-recognition
└ Software
├ 接收機
│ └ 2.串口
│ │ keilkilll.bat
│ ├ CORE
│ │ │ core_cm3.c
│ │ │ core_cm3.h
│ │ │ startup_stm32f10x_cl.s
│ │ │ startup_stm32f10x_hd.s
│ │ │ startup_stm32f10x_hd_vl.s
│ │ │ startup_stm32f10x_ld.s
│ │ │ startup_stm32f10x_ld_vl.s
│ │ │ startup_stm32f10x_md.s
│ │ │ startup_stm32f10x_md_vl.s
│ │ └ startup_stm32f10x_xl.s
│ ├ HARDWARE
│ │ ├ control
│ │ │ │ control.c
│ │ │ └ control.h
│ │ ├ Display
│ │ │ │ display.c
│ │ │ └ display.h
│ │ ├ KEY
│ │ │ │ key.c
│ │ │ └ key.h
│ │ ├ OLED
│ │ │ │ my_oledfont.h
│ │ │ │ oled.c
│ │ │ └ oled.h
│ │ └ TIMER
│ │ │ timer.c
│ │ └ timer.h
│ ├ MyCode
│ │ ├ HX711
│ │ │ │ HX711.c
│ │ │ └ HX711.h
│ │ └ led
│ │ │ LED.c
│ │ └ LED.h
│ ├ OBJ
│ │ │ control.crf
│ │ │ control.d
│ │ │ control.o
│ │ │ core_cm3.crf
│ │ │ core_cm3.d
│ │ │ core_cm3.o
│ │ │ delay.crf
│ │ │ delay.d
│ │ │ delay.o
│ │ │ display.crf
│ │ │ display.d
│ │ │ display.o
│ │ │ ExtDll.iex
│ │ │ key.crf
│ │ │ key.d
│ │ │ key.o
│ │ │ main.axf
│ │ │ main.build_log.htm
│ │ │ main.crf
│ │ │ main.d
│ │ │ main.hex
│ │ │ main.htm
│ │ │ main.lnp
│ │ │ main.o
│ │ │ main.sct
│ │ │ main_Target 1.dep
│ │ │ misc.crf
│ │ │ misc.d
│ │ │ misc.o
│ │ │ oled.crf
│ │ │ oled.d
│ │ │ oled.o
│ │ │ startup_stm32f10x_md.d
│ │ │ startup_stm32f10x_md.o
│ │ │ stm32f10x_gpio.crf
│ │ │ stm32f10x_gpio.d
│ │ │ stm32f10x_gpio.o
│ │ │ stm32f10x_it.crf
│ │ │ stm32f10x_it.d
│ │ │ stm32f10x_it.o
│ │ │ stm32f10x_rcc.crf
│ │ │ stm32f10x_rcc.d
│ │ │ stm32f10x_rcc.o
│ │ │ stm32f10x_tim.crf
│ │ │ stm32f10x_tim.d
│ │ │ stm32f10x_tim.o
│ │ │ stm32f10x_usart.crf
│ │ │ stm32f10x_usart.d
│ │ │ stm32f10x_usart.o
│ │ │ sys.crf
│ │ │ sys.d
│ │ │ sys.o
│ │ │ system_stm32f10x.crf
│ │ │ system_stm32f10x.d
│ │ │ system_stm32f10x.o
│ │ │ timer.crf
│ │ │ timer.d
│ │ │ timer.o
│ │ │ usart.crf
│ │ │ usart.d
│ │ └ usart.o
│ ├ STM32_FWLIB
│ │ ├ inc
│ │ │ │ misc.h
│ │ │ │ stm32f10x_adc.h
│ │ │ │ stm32f10x_bkp.h
│ │ │ │ stm32f10x_can.h
│ │ │ │ stm32f10x_cec.h
│ │ │ │ stm32f10x_crc.h
│ │ │ │ stm32f10x_dac.h
│ │ │ │ stm32f10x_dbgmcu.h
│ │ │ │ stm32f10x_dma.h
│ │ │ │ stm32f10x_exti.h
│ │ │ │ stm32f10x_flash.h
│ │ │ │ stm32f10x_fsmc.h
│ │ │ │ stm32f10x_gpio.h
│ │ │ │ stm32f10x_i2c.h
│ │ │ │ stm32f10x_iwdg.h
│ │ │ │ stm32f10x_pwr.h
│ │ │ │ stm32f10x_rcc.h
│ │ │ │ stm32f10x_rtc.h
│ │ │ │ stm32f10x_sdio.h
│ │ │ │ stm32f10x_spi.h
│ │ │ │ stm32f10x_tim.h
│ │ │ │ stm32f10x_usart.h
│ │ │ └ stm32f10x_wwdg.h
│ │ └ src
│ │ │ misc.c
│ │ │ stm32f10x_adc.c
│ │ │ stm32f10x_bkp.c
│ │ │ stm32f10x_can.c
│ │ │ stm32f10x_cec.c
│ │ │ stm32f10x_crc.c
│ │ │ stm32f10x_dac.c
│ │ │ stm32f10x_dbgmcu.c
│ │ │ stm32f10x_dma.c
│ │ │ stm32f10x_exti.c
│ │ │ stm32f10x_flash.c
│ │ │ stm32f10x_fsmc.c
│ │ │ stm32f10x_gpio.c
│ │ │ stm32f10x_i2c.c
│ │ │ stm32f10x_iwdg.c
│ │ │ stm32f10x_pwr.c
│ │ │ stm32f10x_rcc.c
│ │ │ stm32f10x_rtc.c
│ │ │ stm32f10x_sdio.c
│ │ │ stm32f10x_spi.c
│ │ │ stm32f10x_tim.c
│ │ │ stm32f10x_usart.c
│ │ └ stm32f10x_wwdg.c
│ ├ SYSTEM
│ │ ├ delay
│ │ │ │ delay.c
│ │ │ └ delay.h
│ │ ├ sys
│ │ │ │ sys.c
│ │ │ └ sys.h
│ │ └ usart
│ │ │ usart.c
│ │ └ usart.h
│ └ USER
│ │ EventRecorderStub.scvd
│ │ JLinkLog.txt
│ │ JLinkSettings.ini
│ │ main.c
│ │ main.map
│ │ main.uvgui.Administrator
│ │ main.uvgui.yong
│ │ main.uvguix.asus
│ │ main.uvguix.DBY
│ │ main.uvopt
│ │ main.uvoptx
│ │ main.uvproj.saved_uv4
│ │ main.uvprojx
│ │ startup_stm32f10x_md.lst
│ │ stm32f10x.h
│ │ stm32f10x_conf.h
│ │ stm32f10x_it.c
│ │ stm32f10x_it.h
│ │ system_stm32f10x.c
│ └ system_stm32f10x.h
└ 語音識別模塊
├ code
│ │ config.h
│ │ LDChip.c
│ │ LDChip.h
│ │ main.c
│ │ Reg_RW.c
│ │ Reg_RW.h
│ └ STC11XX.H
├ keil4 APP
│ │ LDChip.lst
│ │ LDChip.obj
│ │ LEDtest.lst
│ │ LEDtest.obj
│ │ main.lst
│ │ main.obj
│ │ Reg_RW.lst
│ │ Reg_RW.obj
│ │ usart.lst
│ │ usart.obj
│ │ V07B.m51
│ │ winning V0.m51
│ │ YS-V0.3
│ │ YS-V0.3.plg
│ │ YS-V0.3.uvopt
│ │ YS-V0.3_uvopt.bak
│ │ YS-V0.3_uvproj.bak
│ │ YS-V0.7.uvgui.asus
│ │ YS-V0.7.uvopt
│ │ YS-V0.7.uvproj
│ │ YS-V0.7_uvopt.bak
│ │ YS-V0.7_uvproj.bak
│ │ YS-V0.lnp
│ └ YS-V0.m51
├ obj
│ │ LDChip.obj
│ │ LEDtest.obj
│ │ main.obj
│ │ Reg_RW.obj
│ │ usart.obj
│ │ V07B
│ │ V07B.build_log.htm
│ │ V07B.hex
│ │ V07B.lnp
│ │ V07B.plg
│ │ YS-V0.3
│ │ YS-V0.3.plg
│ │ YS-V0.7
│ │ YS-V0.7.plg
│ └ YS-V0.lnp
└ user
│ usart.c
└ usart.h