资源描述
滨州学院
课 程 设 计
题 目 基于SPCE061A的语音遥控器_
院 系 自动化系
专业班级 07机械本科二班
学生姓名 李倩
学生学号 2009030096
指导教师 刘宝民
滨州学院课程设计任务书
题目 基于SPCE061A的语音遥控器
专业 机械设计制造及其自动化专业 姓名 李倩 学号 2009030096
主要内容:
设计一个基于SPCE061A的语音遥控器,利用SPCE061A技术,红外识别以及MIC键盘输入技术.
基本要求:
·工作电压(CPU) VDD为2.4~3.6V (I/O) VDDH为2.4~5.5V;
·系统处于备用状态下(时钟处于停止状态),耗电仅为2µA@3.6V;
·14个中断源可来自定时器、时基、外部时钟源输入、键唤醒;
7通道10位电压模-数转换器和单通道声音模-数转换器;
·声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;
·具有低电压复位(LVR)功能和低电压监测(LVD)功能;
·内置在线仿真电路ICE(In- Circuit Emulator)接口;
主要参考资料:
1 边肇祺 张学工 模式识别[M] 北京:清华大学出版社
2 何立民 单片机应用技术选编(1)[M] 北京:北京航空航天大学出版社
完成期限 2011、6、29—2011、7、 10
指导教师 刘宝民
专业负责人
2011年 6 月 29 日
目 录
1.整体设计 1
2系统总开发 2
2.1系统硬件设计 2
2.2系统软件设计 3
2.3系统程序设计-----------------------------------------------------------------------------------5
4.电路的工作原理 7
5.总结 9
6.系统需要的元器件清单 9
7.参考文献 10
1.整体设计
设计要求
·16位µ’nSP™微处理器;
·工作电压(CPU) VDD为2.4~3.6V (I/O) VDDH为2.4~5.5V;
·CPU时钟:0.32MHz~49.152MHz ;
·内置2K字SRAM;
·内置32K FLASH;
·系统处于备用状态下(时钟处于停止状态),耗电仅为2µA@3.6V;
·2个16位可编程定时器/计数器(可自动预置初始计数值);
·2个10位DAC(数-模转换)输出通道;
·32位通用可编程输入/输出端口;
·14个中断源可来自定时器、时基、外部时钟源输入、键唤醒;
·具备触键唤醒的功能;
·7通道10位电压模-数转换器和单通道声音模-数转换器;
·声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;
·具备串行设备接口;
·具有低电压复位(LVR)功能和低电压监测(LVD)功能;
·内置在线仿真电路ICE(In- Circuit Emulator)接口;
·具有保密能力;
·具有WatchDog功能(由具体型号决定)。
系统总体方案论证与比较
方案一:
SPCE061A
键盘输入
MIC输入
温度传感器
语音输出
红外发射
图 3.1。
整个系统主要由键盘输入电路、MIC输入电路、语音输出电路、红外发射电路组成。通过分析按键命令或语音识别结果,利用正常的结果以红外指令码发出,控制电视机的运行,同时用语音提示。系统组成如图 3.1。
方案中用到的单片机式凌阳的16位单片机SPCE061A,由于该CPU具有丰富的I/O口和丰富的时基信号,为我们提供了极大的方便,整个系统结构简单明了,易于批量生产。
方案二:运用传统的集成电路加之以多种辅助电路。但系统规模庞大,且复杂。易受多种因素影响,导致系统工作状况不稳定。这也是传统遥控器的通病。由于系统采用集成电路,携带器件多,耗电量巨大。不易于被消费者接受。
方案的确定:比较两种方案,运用方案二,劣势明显。而运用方案一,系统只用了单颗芯片来完成语音处理和控制功能,与专用的语音处理芯片相比,具有结构简单、成本低、易实现的特点,并且凌阳科技公司提供了丰富的C函数库和语音处理函数库,供用户调用,缩短了开发周期。
2.系统开发
2.1系统硬件设计
硬件电路如图 4.1:
图 4.1硬件电路
硬件上共设计了13个按键,采用4×4的行列式键盘,IOB0~IOB3设置成输入口,IOB4~IOB7设置成输出口,预留3个按键作为备用键。
语音识别电路比较简单,MIC选用驻极体话筒。驻极体话筒具有结构简单、重量轻、体积小、无方向性、频率响应宽、保真度好等优点,它的偏压由SPCE061A的VMIC管脚提供。
SPCE061A提供了2个10位D/A输出通道AUD1、AUD2,用于输出语音信号,每个通道的输出能力为3mA。考虑到功耗,在这里采用了单通道AUD1输出。
通过IOB8输出的PWM信号(IOB8、IOB9有特殊功能)可以作为红外载波信号,其频率由可编程定时器TimerA(或TimerB)的溢出频率决定。
温度传感器采用普通负温度系数热敏电阻,热敏电阻灵敏度高、价格便宜。m’nSP™内核是一个通用的核结构。除此之外的其它功能模块均为可选结构,亦即这种结构可大可小、可有可无。借助这种通用结构附加可选结构的积木式构成,可形成各种不同系列派生产品,以适合不同场合的应用。这样做无疑会使每一种派生产品具有更强的功能和更低的成本。
2.2系统软件设计
在软件设计方面,采用模块化程序结构,当前方案包括初始化、键盘扫描、温度采集、温度播报、万年历时间计算、万年历播报、红外发射、语音识别、语音播放等模块,程序流程见图5.1
N
N
N
Y
开始
系统初始化
键盘扫描
有键?
温度播报键
温度采集
温度播报
进入睡眠
报时键
时间播报
语音识别器
触发语音识别
红外发射
图5.1
N
系统初始化的过程:先对系统时钟、IO口、万年历、中断(打开按键唤醒和2Hz中断)进行初始化,然后扫描按键,如果有按键,进行相应处理,无按键则进入睡眠模式,万年历的计算在2Hz中断服务程序中进行。
语音播放模块应用凌阳科技提供的音频编码算法,首先在PC机上录好提示语音文件(WAV文件),并经所提供的压缩工具进行压缩处理以形成二进制文件,加载到用户程序中,编译链接后存储到单片机FLASH中,播放时再解压缩送D/A还原出语音。对于应用u’nSPTM内核的SPCE系列芯片,向用户提供三种不同压缩率的算法,各种压缩算法的名称及编码率类型列在表 5.1。
表 5.1
压缩算法名称
语音压缩编码率类型
SACM_A2000
16KBits/s、20KBits/s、24KBits/s
SACM_S480
4.8KBits/s、7.2KBits/s
SACM_S240
2.4KBits/s
这三种压缩算法的区别在于压缩率和音质的不同。SACM_A2000算法的压缩率相对较小,音质较好,相应地,占用的资源较多。SACM_S240算法的压缩率最大,音质相对较差。SACM_S480算法介于这两者之间。每种算法都有完整的供程序调用的库函数,软件编写非常方便。
2.3系统程序设计
本语音遥控器采用SACM_S480算法。语音提示背景播放程序:
SACM_S480_Initial(1); //播放硬件资源初始化
ACM_S480_Volume(15); //初始化音量
SACM_S480_Play(result,3,3); //播放函数
while((SACM_S480_Status()&0x0001)==1) //播放状态
{
SACM_S480_ServiceLoop(); //播放服务函数
}
SACM_S480_Stop(); //停止播放
主播放函数SACM_S480_Play(int Index,Int Channel,Int Ramp_Set)有三个参数:
1. Index:播放索引号;
2. Channel:播放通道。1—通过DAC1通道播放,2—通过DAC2通道播放,3—通过DAC1和DAC2通道播放;
3. Ramp_Set:消除开始放音时的“啵”声。
语音识别电路的基本结构如图 5.2。
图 5.2
音
滤除噪音
预加重
滤波器组PACRCOR系数、线性预测系数、过零次数、能量相关函数等
模式匹配
词典
语音分析
语音识别分为特定发音人识别(Speaker Dependent)和非特定发音人识别(Speaker Independent)两种方式。
特定发音人识别是指语音样板由单个人训练,对训练人的语音命令识别准确率较高,而其他人的语音命令识别准确率较低或不识别。
非特定发音人识别是指语音样板由不同年龄、不同性别、不同口音的人进行训练,可以识别一群人的命令。语音样板的提取非常重要。语音遥控器就是采用非特定发音人识别方式。
语音识别分为语音样板训练和语音识别两个过程。我们将标准模式的存储空间称之为“词库”,而把标准模式称之为“样板”。所谓语音样板训练,就是将待识别的命令进行频谱分析,提取特征参数作为识别的标准模式。语音识别的过程就是提取语音命令的特征参数,与词库中的样板比较,取相似度最好的样板命令序号作为识别结果。凌阳科技公司提供语音样板训练工具和语音识别库函数,每次可以识别30条语音命令,命令较多的话可以分多组进行,语音识别流程见图 5.3:
图5.3流程图
初始化识别器
选择样板库
调BSR_GetResult(函数)
函数返回值
识别结果处理
其他处理
3.电路的工作原理
目前所设计的电视语音遥控器,主要由键盘输入电路、MIC输入电路、温度采集电路、语音输出电路、红外发射电路组成。用户通过按键,完成遥控功能——保留按键功能、语音报温和报时功能。SPCE061A有1路专用于采集语音信号的A/D转换电路(MIC输入)和7路用于其它功能的A/D转换电路。前者能用来进行语音识别、录音等的语音信号的输入,在本遥控器里用来采集语音信号,进行语音识别;后者中,选择其中1路进行温度采集,由按键控制温度的播报。有丰富的时基信号,采用2Hz的时钟进行计数,并进行万年历计算,由按键控制播报时间。
工作原理如下图所示:
语音信号处理的基础是对语音信号进行数字化,并采样存储。SRCE061A内置专门用于语音信号采集的自动增益控制放大器(AGC)的麦克风输入通道(MIC_IN)。语音信号经麦克转换成电信号,由隔离电容隔掉直流成分,然后输入至内部前置放大器。SPCE061A内部自动增益控制电路AGC能随时跟踪、监视前置放大器输出的音频信号电平,当输入信号增器时,AGC电路自动减小放大器的增益;当输入信号减小时,AGC电路自动增大放大器的增益,以便使进入A/D的信号保持在最佳电平,又可使谐波减至最小。
ADC初始化程序如下:
INT OFF;
R1=0x0030;
[P_TimerA_Ctrl]=R1;
//时钟频率为CLKA的fosc/2
R1=0xfa00;
[P_TimerA_Data]=R1;
//采样率为16kHz
R1=0x003d;
[P_ADC_Ctrl]=R1; //设置AGC功能
R1=0x00A8;
[P_DAC_Ctrl]=R1; //采用自动方式且通过MIC_IN通道输入,通过定时器A的溢出锁存数据,ADC为自动方式
R1=0x1000;
[P_INT_Ctrl]=R1; //开中断IRQ1_TM
INT IRQ;
4.总结
上面介绍了采用SPCE061A来完成红外遥控、语音识别、语音报温、报时等综合功能的语音遥控器。功能的语音遥控器。系统只用了单颗芯片来完成语音处理和控制功能,与专用的语音处理芯片相比,具有结构简单、成本低、易实现的特点,并且凌阳科技公司提供了丰富的C函数库和语音处理函数库,供用户调用,缩短了开发周期。本品稍作改动,就可以用来控制空调机、录像机等电器;利用SPCE061A的语音处理优势可组成语音应答系统、语音合成系统、互动式玩具等,具有广阔的市场前景。
6.系统需要的元器件清单
表1 元器件清单
序号
元器件类型
元器件规格
数量
备注
1
凌阳SPCE061A单片机
工作电压(CPU) VDD为2.4~3.6V (
1
2
温度传感器
若干
3
声音模-数转换器
1
4
声控晶体管
若干
5
高智能开关
1
7.参考文献
1 边肇祺 张学工 模式识别[M] 北京:清华大学出版社
2 何立民 单片机应用技术选编(1)[M] 北京:北京航空航天大学出版社
3 张毅刚 .单片机原理及应用[M].北京:高等教育出版社 .2003年
4 吴金戌 .8051单片机实践与应用[M] . 北京:清华大学出版社 .2002年
5 张立科 . 单片机典型模块设计实例导航[M] .北京:人民邮电出版社 .2004年
6 李光飞 .单片机C程序设计实例指导[M].北京:北京航空航天大学出版社 .2005年
7 侯振鹏 .嵌入式C语言程序设计[M].北京:人民邮电出版社 .2006年
8 戴 佳 .51单片机C语言应用程序设计[M].北京:电子工业出版社 .2006年
大庆石油学院课程设计成绩评价表
课程名称
通信电子线路课程设计
题目名称
基于SPCE061A的语音遥控器
学生姓名
赵勇
学号
070602140125
指导教
师姓名
职称
序号
评价项目
指 标
满分
评分
1
工作量、工作态度和出勤率
按期圆满的完成了规定的任务,难易程度和工作量符合教学要求,工作努力,遵守纪律,出勤率高,工作作风严谨,善于与他人合作。
20
2
课程设计质量
课程设计选题合理,计算过程简练准确,分析问题思路清晰,结构严谨,文理通顺,撰写规范,图表完备正确。
45
3
创新
工作中有创新意识,对前人工作有一些改进或有一定应用价值。
5
4
答辩
能正确回答指导教师所提出的问题。
30
总分
评语:
指导教师: 2009年7月11日
展开阅读全文