基于凌阳SPCE061A语音识别门禁

上传人:woxinch****an2018 文档编号:38980590 上传时间:2018-05-10 格式:DOC 页数:25 大小:1.21MB
返回 下载 相关 举报
基于凌阳SPCE061A语音识别门禁_第1页
第1页 / 共25页
基于凌阳SPCE061A语音识别门禁_第2页
第2页 / 共25页
基于凌阳SPCE061A语音识别门禁_第3页
第3页 / 共25页
基于凌阳SPCE061A语音识别门禁_第4页
第4页 / 共25页
基于凌阳SPCE061A语音识别门禁_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《基于凌阳SPCE061A语音识别门禁》由会员分享,可在线阅读,更多相关《基于凌阳SPCE061A语音识别门禁(25页珍藏版)》请在金锄头文库上搜索。

1、“睿泰睿泰”杯南京邮电大学第十六届大学生科技节杯南京邮电大学第十六届大学生科技节传感器设计大赛传感器设计大赛作品研究报告作品名称:作品名称: 基于凌阳基于凌阳 SPCE061ASPCE061A 的语音识别门禁的语音识别门禁 院(系)全称:院(系)全称: 申报者姓名申报者姓名(集体名称):(集体名称): 类别: 传感器应用类 传感器设计类 一、一、 设计背景设计背景在科学日新月异的今天,电子设备的便捷化,人性化,智能化已成为不可逆转的潮流,而语音控制智能,更是其中研究发展的热点。凌阳 SPCE061 以其便捷的操作,可靠的性能,成为了各位电子爱好者的首选。而本设计即是基于凌阳 SPCE061A

2、的语音识别门禁系统,操作简单,语音识别,无线识别,可靠性高。凌阳 SPCE061A 是一款 16 位的 SoC 芯片,它自身带有硬件乘法器,能够实现乘法、内积等复杂运算,不仅运算能力强,而且处理速度快,单周期最高可达到 49MHz;它内嵌 32K 字的 Flash 程序存储器和 2K 字节的 SRAM,具有 ADC 和 DAC 功能,其MIC_ADC 通道带有 AGC 环节,能够很轻松的将语音信号采集到芯片内部,两路 10 位的电流输出型 DAC,只要外接一个功放就可以完成声音的播放。SPCE061A 的这些硬件资源可以支持单芯片语音处理功能。凌阳单片机的语音识别模块自带语音的 API 函数,

3、其中包括 A2000 格式和 S480 格式自动播放及手动播放的播放函数,S240、MS01 格式自动播放的播放函数、DVR 格式的语音录放函数和语音识别函数,让凌阳单片机不但可以作为普通的单片机开发系统,而且还可以作为一个语音系统进行语音播放、语音录放和语音识别,大大降低了凌阳单片机的开发难度,并增强了凌阳单片机的使用领域和功能。本设计为语音识别的门禁系统,语音识别的同时附加无线收发模块 NRF905,基于收发地址的不同,可以进一步增强本设计的安全性。报警模块由 MSP430 单片机,HC-SR501 人体感应模块,蜂鸣器组成,以下为本设计原理图:二、二、 主要模块主要模块1、凌阳 SPCE

4、061 是继 nSP系列产品 SPCE500A 等之后凌阳科技推出的又一款 16 位结构的微控制器。与 SPCE500A 不同的是,在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A 里只内嵌 32K 字的闪存(FLASH ) 。较高的处理速度使 nSP能够非常容易地、快速地处理复杂的数字信号。因此,与 SPCE500A 相比,以 nSP为核心的 SPCE061A 微控制器是适用于数字语音识别应用领域产品的一种最经济的选择。 其性能如下: A、16 位 nSP微处理器; B、工作电压(CPU) VDD 为 2.43.6V (I/O) VDDH 为 2.45.5V

5、C、CPU 时钟:0.32MHz49.152MHz ; D、内置 2K 字 SRAM; E、内置 32K FLASH; F、可编程音频处理; G、晶体振荡器; H、系统处于备用状态下(时钟处于停止状态),耗电仅为 2A3.6V ;I、2 个 16 位可编程定时器/计数器(可自动预置初始计数值); J、2 个 10 位 DAC(数-模转换)输出通道; K、32 位通用可编程输入/输出端口; L、14 个中断源可来自定时器 A / B ,时基,2 个外部时钟源输入,键唤醒; M、具备触键唤醒的功能; N、使用凌阳音频编码 SACM_S240 方式(2.4K 位/秒),能容纳 210 秒的语音数据;

6、 O、锁相环 PLL 振荡器提供系统时钟信号; P、32768Hz 实时时钟; Q、7 通道 10 位电压模-数转换器(ADC)和单通道声音模-数转换器;R、声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能; S、具备串行设备接口; T、具有低电压复位(LVR)功能和低电压监测(LVD)功能; U、内置在线仿真电路 ICE(In- Circuit Emulator )接口; V、具有保密能力; W、具有 WatchDog 功能。SPCE061A 的结构如下图所示:2、MSP430 单片机是美国德州仪器(TI)1996 年开始推向市场的一种16 位超低功耗的混合信号处理器(M

7、ixed Signal Pocessor)。称之为混合信号处理器,主要是由于其针对实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供“单片”解决方案。其性能如下:A、工作电压范围:1.83.6V B、超低功耗: 活动模式:330uA,1MHz,2.2V;待机模式:1.1uA;关闭模式(RAM 保持):0.2uA; C、从等待方式唤醒时间:6us D、16 位 RISC 结构,125ns 指令周期 E、内置三通道 DMA。 F、12 位 A D 带采样保持内部参考源。 G、双 12 位 D A 同步转换。 H、16 位定时器 Timer_A 。 I、16 位定时器 Time

8、r B。 J、片内比较器 A K、串行通信 USART0(UART、SPI、I2C)接口 L、串行通信 USARTI(UART、SPl)接口 M、具有可编程电平检测的供电电压管理器,监视器。 N、欠电压检测器 O、串行在线编程,无需外部编程电压,可编程的保密熔丝代码保其引脚分布图如下:3、NRF905 无线收发模块是单片射频收发芯片,工作于 433MHz的 ISM 频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。芯片能耗非常低,以 10dBm 的功率发射时,工作电流仅有 30mA,接收时工作电流只有 12.5mA,多种低功率工作模式,待

9、机模式下电流仅为 12.5A,节能设计更方便。其 ShockBurst 技术可在通讯时自动生成前导码和 CRC 校验位。其性能如下:A、422.4473.5MHz 工作频段B、512 个通讯频道,满足多点通讯、分组、跳频等应用需求,通道切换时间6usC、发射功率可设置为:10dBm、6dBm、-2dBm 和-10dBmD、通过 SPI 接口与 MCU 连接E、支持 50kbps 传输速率F、ShockBurst 传输模式,自动生成前导码和 CRC 校验码G、工作电压范围:1.9V3.6V,待机模式下电流仅为 12.5AH、工作温度范围:-40+85NRF905 实物图:4、HC-SR501 人

10、体感应模块是基于红外线技术的自动控制模块,采用德国进口 LH778 探头设计,灵敏度高,可靠性强,超低电压工作模式,广泛应用于各类自动感应电气设备,尤其是干电池供电的自动控制产品。其性能如下:HC-SR501 实物图:三、三、各部分硬件电路图、软件设计流程图及部分实现代码各部分硬件电路图、软件设计流程图及部分实现代码 1、语音控制部分 硬件电路图:软件设计流程图:部分实现代码:#include “bsrsd.h“#define NAME_ID 0x100#define COMMAND_ONE_ID 0x101#define COMMAND_TWO_ID 0x102#define COMMAND

11、_THREE_ID 0x103#define COMMAND_FOUR_ID 0x104#define RSP_INTR0#define RSP_NAME0#define RSP_FIRE1#define RSP_GUARD2#define RSP_AGAIN3#define RSP_NOVOICE4#define RSP_NAMEDIFF5#define RSP_CMDDIFF6#define RSP_STAR 7#define RSP_MASTER8#define RSP_HERE9#define RSP_GUNSHOT0#define RSP_PATROL11#define RSP_RE

12、ADY12#define RSP_COPY13#define RSP_NOISY14/.全程变量.int gActivated = 0;/该变量用于检测是否有触发命令,当有识别出语句/为触发名称则该位置 1 int gTriggerRespond = RSP_MASTER, RSP_HERE, RSP_MASTER;int gComm2Respond = RSP_PATROL, RSP_READY, RSP_COPY;extern void ClearWatchDog();int PlayFlag = 0;void PlayRespond(int Result)BSR_StopRecogniz

13、er();SACM_S480_Initial(1);SACM_S480_Play(Result, 3, 3);while(SACM_S480_Status()ClearWatchDog();SACM_S480_Stop();BSR_InitRecognizer(BSR_MIC);BSR_EnableCPUIndicator();int TrainWord(int WordID, int RespondID)int res;PlayRespond(RespondID);while(1)res = BSR_Train(WordID,BSR_TRAIN_TWICE);if(res = 0) brea

14、k;switch(res)case -1: /没有检测出声音PlayRespond(RSP_NOVOICE);return -1;case -2: /需要重新训练一遍PlayRespond(RSP_AGAIN);break;case -3: /环境太吵PlayRespond(RSP_NOISY);return -1;case -4: /数据库满return -1;case -5: /检测出声音不同if(WordID = NAME_ID)PlayRespond(RSP_NAMEDIFF);/两次输入名称不同elsePlayRespond(RSP_CMDDIFF);/两次输入命令不同return

15、-1;case -6: /序号错误return -1;return 0;int main()int res, timeCnt = 0, random_no = 0;InitIO();BSR_DeleteSDGroup(0);/ 初始化存储器RAM/PlayRespond(RSP_INTR); / 播放开始训练的提示音“请输入触发名称“/.训练名称.while(TrainWord(NAME_ID,0) != 0) ; /.训练第一条命令.while(TrainWord(COMMAND_ONE_ID,1) != 0) ;/.开始识别命令.BSR_InitRecognizer(BSR_MIC); /辨识器初始化BSR_EnableCPUIndicator(); /

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号