基于51单片机语音存储与回放系统设计Word文档格式.docx
《基于51单片机语音存储与回放系统设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于51单片机语音存储与回放系统设计Word文档格式.docx(35页珍藏版)》请在冰豆网上搜索。
未定义书签
参考文献27
附录128
附录230
在智能仪器仪表或自动控制设备中,增加语音功能能极大地提高人机界面的
友好性,方便用户操作。
在许多场合需要将语音合成、语音识别、语音存储和回
放技术和单片机结合在一起。
常规的模拟化语音处理系统能实现语音的存储与回放功能,但效果不是很好。
本文采用了Flash单片机AT89C51及数码语音芯片ISD2560组成的数字化的语音存储与回放系统。
单片机是系统的控制中心,它主要实现以下的功能:
一方面控
制按键识别和功能选择;
另一方面控制ISD2560语音芯片的录音和放音过程,实
现语音的存储和回放。
本设计首先给出了系统的硬件电路,接着结合硬件电路编写了录、放音控制程序,最后,对本设计进行总结与展望。
关键词:
AT89C51单片机ISD2560语音芯片语音存储语音回放
ABSTRACT
Intheareaofintelligentinstrumentsandautomaticcontrolequipments,thesystemwiththephoneticfunctioncangreatlyincreasethefriendlinessoftheman-machineinterface,andisalsoconvenientforuserstooperate.Inmanysituations,designersneedtointegratethephoneticsynthesis,thephoneticrecognitionandthephoneticstorageandplaybacktechnologywiththeSCM.
Thecommonanalog-signaldigitalizeprocessingsystemcanrealizethefunctionofphoneticstorageandplayback.Buttheeffectsarenotverygood.Thisdissertationdesignsthedigitalphoneticsystemcomposedofflashmicro-controllerAT89C51anddigitalaudiochipISD2560.SCMisthecontrolcenterofthesystem,itismainlytoachievethefollowingfunctions:
thekeystrokeidentificationandthefunctionselection;
phoneticstorageandplaybackbyusingthedigitalaudiochipISD2560.
Firstly,thisdissertationdesignsthehardwarecircuitofthesystem.Andthencompiles
thecontrolprogramofrecordandplayback.Atlast,thesummaryandprospectsofthedesignwaspresented.
Keywords:
AT89C51ISD2560phoneticstoragephoneticplayback
(1)课题研究背景及科学意义
在智能仪器仪表或自动控制设备中,增加语音功能能极大地提高人机界面的友好性,方便用户操作。
目前语音服务行业越来越广泛,如电脑语音钟、语音型数字万用表、手机话费查询系统、排队机、监控系统语音报警以及公共汽车报站器等。
在许多场合,设计者需要将语音系统和单片机结合在一起。
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机,单片机可以说是世界上数量最多的计算机。
手机、电话、计算器、家用电器、电子
玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。
而个人电脑中也会有
为数不少的单片机在工作。
可以说,单片机能够在语音功能的实现应用中发挥重
大的作用。
数字语音录放是指利用数字技术对语音信号进行采集、处理、并且在一定存储设备中进行存储,并可在需要时进行输出的过程。
相对于模拟设备来说,数字设备易于集成、小型化、成本更低,同时更为稳定,且操作更为直接、方便,使得数字语音录放系统目前在各种领域中都得到了广泛的应用。
例如监控环境中使用的语音采集系统;
再如家庭或学校中使用的语音复读机等,都可看作是数字语音录放系统的典型应用。
在对语音信号的处理方面,常规方法是采用滤波器处理接收到的模拟语音信号,通过模数转换成为数字信号,再由单片机控制存储到存储器中。
在需要输出
语音信号时,亦可由单片机控制从存储器中输出,再经数模转换成模拟信号,通
过l\V变换成电压信号,滤波后通过功放将语音信号输出。
但是这种方法的缺点是,
输出不稳定,语音信号有杂音或者变音,这是模拟电路所不能避免的。
为了解决这个问题,我们可以采用专用的语音芯片。
语音芯片就是在人工或者是控制器的控制下可以录音和放音的芯片。
语音芯片可以很方便的在单片机系统中使用,并且和单片机的接口非常容易,其体积和重量也能符合单片机系统的要求。
因此,本次课题的设计采用的是单片机和语音芯片的结合,实现语音信号
的数字化控制。
(2)国内外研究现状
随着IT行业的不断进步,现在我们的生活中各种语音录播设备层出不穷。
在一般的数字语音录放系统中,对语音只是进行简单的采集、存储和播放;
虽然可以较大程度上保证语音的保真度,但过多的语音数据会造成对大量存储设备的需
求。
对于大型系统,可通过采用大容量的硬盘、甚至大规模的磁盘阵列来解决;
但是对于小型的设备,例如便携式的语音复读机,由于容量有限,则不能采用同样的方法。
近年来,语音信号处理技术研究的突飞猛进,为数字语音录放系统提供了新的发展空间。
对语音的采集、处理从以前简单的波形编码转变为参数编码、压缩,从而大大减少了存储数据。
举例来说,原始语音一般都是采用8KHz抽样,16bits
的线性PCM编码进行采集,在一般的系统中就直接将采集后的数据进行存储;
而如果采用参数编码对采集后的数据进行压缩,存储量则可以大大减少,当需要恢复语音时,可利用编码后的参数进行合成,可以得到质量令人满意的结果。
目前比较典型的语音器件有美国ISD公司生产的ISD系列语音芯片。
ISD系列语音芯片采用模拟数据在半导体存储器直接存储的专利技术,即将模拟语音数据直接写入单个存储单元,不需经A/D或D/A转换,因此能够较好的真实再现语
音的自然效果,避免了一般固体语音电路因为量化和压缩所造成的量化噪声和失真现象。
另外芯片功能强大:
即录即放、语音可掉电保存、10万次的擦写寿命、
手动操作和CPU控制兼容、可多片级联、无需开发系统等等,确实给欲实现语音功能的单片机应用设计人员提供了解决方案。
现在市场上已有公司将以AT89C2051单片机与ISD语音芯片组成的语音组合板,用串口通信,芯片里固化有一些常用语音词汇,用户不需了解语音功能的工作原理,只需通过串口按一定协议发送代码即可送出语音。
(3)研究方法
系统要求实现语音的数字化存储与回放,整个系统分为录音、停止和回放三种状态。
语音信号作为一种模拟信号,本身不能完成数字化的处理,需要借助专门的语音芯片或者是通过A/D和D/A转换完成模拟语音信号的处理工作。
单片机
在这个过程中起到了举足轻重的作用。
单片机需要控制语音录音的开始与结束,设定信号存储的地址,并在播放时寻址播放空间并控制播放。
对于通过A/D和D/A转换完成语音信号处理的方法介绍如下:
将模拟语音信号通过模数转换器转换成数字信号,再通过单片机控制存储在存储器中,回放时,由单片机控制将数据从存储器中读出,然后通过数模转换器转换成模拟信号,经
放大在扬声器或耳机上输出语音。
这种方法系统电路简单,程序简洁。
采用闪存
保存语音,即使断电仍然能保持信息不丢失,所以保存信息安全可靠。
但是该系统仍需要使用到模拟电路进行信号的放大与滤波,这会使得到的语音信号相对失真,同时也需要采用软件滤波技术加以完善,因此本次设计不采用该方法。
模拟存储
若采用语音芯片处理,则不需要在外部进行语音信号的放大和滤波,语音芯片的抗干扰能力极强,可以有效地防止信号失真。
语音芯片内部集成了
阵列,不用外连存储器,这使得电路更加简单易懂,因此本次设计采用该方法来实现。
(4)本文的主要工作
本设计的主要任务是查阅国内外相关文献资料,在了解和熟悉目前语音存储
与回放系统结构、功能以及发展现状的基础上,完成基于51单片机语音存储与回
放系统设计。
论文组织结构如下:
绪论主要讲述了本课题的来源,研究背景和科学意义,对国内外的研究现状和成果的优越点进行了概述,初步描述了单片机语音存储与回放系统的设计方法。
第1章单片机控制语音录放系统的设计。
详述了设计方案的选择过程和单片
机、语音芯片的选型方法,并介绍了所需芯片的各项功能。
第2章语音录放系统硬件电路设计。
描述了基于51单片机语音存储与回放
系统的组成、功能和控制方案,设计出完整的硬件电路。
第3章语音录放系统软件设计。
绘出了程序的组成框图,完成了语音存储与回放系统的软件设计,实现了最初设定的功能。
结束语总结出本文设计的优缺点,并对系统的改进方向提出了展望。
1语音录放系统总体设计及主要芯片说明
1.1总体方案论证
方案一:
利用单片机及其外围硬件电路(如A/D、D/A、存储器等),就能完
成语音信号的数字化处理,实现语音的存储与回放。
系统主要由单片机AT89C51、
AD574、DAC0832及闪速存储器AT29C040组成。
其原理图如图1-1所示。
声音通过MIC转换成微弱的电信号,经专用的音频前置放大器放大后,由带通滤波器滤波,输出的信号经A/D转换送入单片机。
单片机控制将数字信号存储在存储器中,在需要放音时,单片机控制数字信号从存储器中读出,经D/A转换后输出。
这种方法过程简单,但是语音信号容易受到外界干扰而失真,并且信号的压缩存储比较复杂,硬件电路不宜调试。
图1-1方案一系统原理图
方案二:
直接采用单片机与专用的语音处理芯片ISD2560设计实现语音存储
与回放,实现语音的整段录放。
系统框图如图1-2所示。
图1-2方案二系统原理图
该系统采用语音芯片处理语音信号,抗干扰能力强,存储方便,调试简单,还可以作为语音服务的子系统,所以选择此方案。
下面,就针对此方案做具体的介绍。
1.2器件选择
1.2.1单片机的选择
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理
能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断
系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多
路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系
统。
单片机也有很多种类,比如PIC单片机、MCS-51单片机和AVRATmega128
单片机等等。
51单片机是对目前所有兼容Intel8031指令系统的单片机的统称。
该系列单片机的始祖是Intel的8031单片机,后来随着FlashRom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。
目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51
和AT89C2051都是高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89C51和AT89C2051主要性能对比表如表1-1所示。
表1-1AT89C51和AT89C2051主要性能对比表
项目
AT89C51
AT89C2051
存储器
4KB可编程Flash存储器
2KB可编程Flash存储器
存储器保密
二级程序存储器保密
两级程序存储器保密
内部RAM
128字节
静态工作频率
0Hz~24MHz
定时/计数器
2个16位定时/计数器
串行通讯口
1个串行通讯口
中断源
6个中断源
I/O引线
32条I/O引线
15条I/O引线
以上可以看出它们是大体相同的,由于AT89C2051的I/O线很少,导致它无
法外加RAM和程序ROM,片内Flash存储器也少,但它的体积比AT89C51小很
多。
在这里考虑到以后的扩展,本次设计选择了扩展接口较多的AT89C51,以便
在需要的时候能够升级而扩展其他的功能。
1.2.2语音芯片选择
语音芯片又称语音IC,又被叫做声音芯片。
芯片的录音功能包括ADC和DAC
两个过程,都是由芯片本身完成的,包括语音数据的采集、分析、压缩、存储、等步骤。
它能够将语音信号通过采样转化为数字,存储在IC的ROM中,再通过
电路将ROM中的数字还原成语音信号;
而语音芯片放音功能实质上是一个DAC
过程。
语音芯片根据集成电路类型来分,凡是与声音有关系的集成电路被统称为语音芯片,但是在语音芯片的大类型中,又被分为语音IC(这里应该叫成SpeechIC)、
音乐IC(这里应该叫成MusicIC)两种。
目前,在市场上使用较为普遍的语音芯片如表1-2所示。
表1-2常用语音芯片对比表
TE6310
TE6332
ISD1420
ISD2560
10s
32s
20s
60
语曰长度
采样频率(kHz)
6.4
4~6.4
8
放音触发
无
边缘/电平
电平
工作电压(V)
4.5~5.5
2.7~3.3
工作电流(mA)
30
45
静态电流((1A)
2
10
MIC前置
是
否
由上表可以看出,ISD2560语音芯片的语音长度较长,工作电流和电压也符合要求。
因此,本次设计将采用ISD2560作为系统的语音处理芯片参与工作。
1.3AT89C51芯片说明
AT89C51是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,片内含4kbytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器。
器件采用ATMEL公司的高密度、非易失性存储技术生产,与MCS-51指令系统及8051产品引脚兼容,片内置通用8位中央处理器和Flash存储单元,功能强大。
AT89C51单片机适合于许多较为复杂控制应用场合。
1.3.1AT89C51的主要参数
AT89C51芯片有以下特点:
(1)与MCS—51产品指令和引脚完全兼容
(2)4k字节可重擦写Flash闪速存储器
(3)1000次擦写周期
(4)全静态操作:
0Hz—24MHz
(5)三级加密程序存储器
(6)1288字节内部RAM
(7)32个可编程I/O口线
(8)3个16位定时/计数器
(9)8个中断源
(10)可编程串行UART通道
(11)低功耗空闲和掉电模式
功能特性概述:
AT89C51提供以下标准功能:
4k字节Flash闪速存储器,128字节内部RAM,
32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至OHz的静态逻辑操作,
并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,
定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,
但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
1.3.2AT89C51的引脚功能说明
AT89C51芯片引脚排列图见附录1,下面介绍一下与本设计相关的引脚功能。
P0口(P0.0~P0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,
它是地址总线(低8位)和数据总线复用。
外部不扩展而单片应用时,则作一般双向I/O口用。
P0口每一个引脚可以推动8个LSTTL负载。
卩1口(P1.0~P1.7)是具有内部提升电路的双向I/0端口(准双向并行I/O口),
其输出可以推动4个LSTTL负载。
仅供用户作为输入输出用的端口。
卩2口(P2.0~P2.7)是具有内部提升电路的双向I/O端口(准双向并行I/O口),
当访问外部程序存储器时,它是高8位地址。
外部不扩展而单片应用时,则作一般
双向I/O。
每一个引脚可以推动4个LSTTL负载。
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口除了作为一般的I/O口线
外,更重要的用途是它的复用功能,如表1-3所示。
表1-3P3口复用功能表
端口引脚
复用功能
P3.0
RXD(串行通信输入)
P3.1
TXD(串行通信输出)
P3.2
INT0(外部中断0输入,低电平有效)
P3.3
INT1(外部中断1输入,低电平有效)
P3.4
T0(计数器0,外部事件计数输入端)
P3.5
T1(计数器1,外部事件计数输入端)
P3.6
WR(外部随机存储器的写选通,低电平有效)
P3.7
RD(外部随机存储器的读选通,低电平有效)
RST:
复位输入。
VCC:
AT89C51电源正极输入,接+5V电压。
GND:
电源接地端。
XTAL1:
接外部晶振的一个引脚。
在单片机内部,它是一反相放大器输入端,
这个放大器构成了片内振荡器。
它采用外部振荡器时,一些引脚应接地
XTAL2:
在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。
当采用外部振荡器时,则此引脚接外部振荡信号的输入。
EA/VPP:
该引脚为低电平时,则读取外部的程序代码(存于外部EPROM中)
来执行程序。
因此在8031中,EA引脚必须接低电位,因为其内部无程序存储器空间。
如果是使用AT89C51或其它内部有程序空间的单片机时,此引脚接成高电平使程序运行时访问内部程序存储器,当程序指针PC值超过片内程序存储器地址(如
8051/8751/89C51的PC超过0FFFH)时,将自动转向外部程序存储器继续运行。
此
外,在将程序代码烧录至8751内部EPROM、89C51内部FALSH时,可以利用此引
脚来输入提供编程电压(8751为2IV、AT89C51为12V、8051由生产厂方一次性加
工好)。
1.4ISD2560语音芯片
采用ISD系列语音芯片进行录音是一种可行的方法,它有音质自然、单片存
储、反复录放、低功耗等优点。
一块ISD芯片上集成有麦克风前置放大器(AMP)、自动增益控制电路(AGC)、抗混淆和平滑滤波器、模拟存储阵列、扬声器驱动
器、控制接口和内部精确的参考时钟,外部元件包括:
液晶、麦克风、扬声器、
开关和少数电阻、电容,再加上电源和电池。
ISD2560语音芯片是美国ISD公司产品,是ISD系列单片语音录放集成电路
的一种。
这是一种永久记忆型语音录放电路,录音时间为60s,可重复录放10万
次。
芯片采用多电平直接模拟量存储专利技术,省去了A/D、D/A转换器。
每个采
样值直接存储在片内单个EEPROM单元中,因此能够非常真实、自然地再现语音、
音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和金
属声”。
ISD2560集成度较高,内部包括前置放大器、内部时钟、定时器、采样时钟、滤波器、自动增益控制、逻辑控制、模拟收发器、解码器和480K字节的EEPROM
1.4.1ISD2560的引脚功能
ISD2560的引脚排列见附录1,各引脚的主要功能描述如下:
A0/M0~A6/M6、A7~A9:
地址线,ISD器件可以实现1〜600段录放语音功能,每段录放音都有一个起始端,该起始地址的选择由A0~A9确定。
当A8、A9同时
为高电平时可以选择工作模式。
AUXIN:
当CE和P/R为高,放音不进行,或处于放音溢出状态时,本端的输
入信号通过内部功放驱动喇叭输出端
VSSD、VSSA:
数字地和模拟地,这两脚最好在引脚焊盘上相连。
SP+、SP-:
扬声器输出。
VCCA、VCCD:
模拟电源、数字电源,尽可能在靠近供电端处相连。
MIC:
本端连至片内前置放大器,外接话筒应通过串联电容耦合到本端,耦合电容值和本端的10KQ输入电阻。
MICREF:
本端是前置放大器的反向输入。
当以差分形式连接话筒时,可减小噪声,提高共模抑制比。
AGC:
AGC动态调整前置增益以补偿话筒输入电平的宽幅变化,使得录制变化很大的音量时失真都能保持最小。
响应时间取决于本端的5KQ输入阻抗外接的
对地电容的时间常数。
释放时间取决于本端外接的并联对地电容和电阻的时间常数。
470KQ和4.7uF的标称值在绝大多数场合下可获得满意的效果。
ANAIN:
本端为芯片录音信号输出。
对话筒输入来说ANAOUT端应通过外
接电容连至本端。
ANAOUT:
前置放大器的输出,前置电压增益