完整版数字化语音存储与回放系统设计附带程序复习课程.doc
Good is good, but better carries it.精益求精,善益求善。完整版数字化语音存储与回放系统设计附带程序-本科生毕业论文(设计)题目:数字化语音存储与回放系统的设计学生姓名:李进国学号:200611020120专业班级:电信06101班指导教师:彭光含完成时间:2010年5月10日目录摘要2Abstract2引言31系统的方案论证32系统硬件设计42.1拾音器52.2放大器设计62.3可调稳压电源的设计82.4AT89C51介绍82.5D/AA/D转换器102.5.1D/A转换器DAC0832的介绍102.5.2A/D转换器DA574的介绍112.6存储器的选择122.7键盘的设定133模块接口原理133.1AT89C51和AD574的接口原理1332DAC0832与单片机的接口原理153.3存储芯片与单片机的接口原理164系统接口总图163.5系统的校正174软件设计195结论19答谢20参考文献20附录:总程序21数字化语音存储与回放系统的设计专业:电子信息科学与技术姓名:李进国指导老师:彭光含摘要:本文介绍的数字化语音存储与回放系统将完全可以替代传统的磁带语音录放系统。其基本原理是对语音的录音与放音的数字化控制。为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放时再进行解压缩,同时,该系统对语音信号分别采用了数据采集直存直取,欠抽样采样和自相似增量调制等三种方法,完成了对语音信号存储与回放。关键词:数字化存储,回放,数字滤波,采样,模/数转换,校正DesignofDigit-VoiceRecorderandPlaybackSystemElectronicsandInformationScienceandTechnologyAdvisor:PengGuanghanCandidate:LiJinguoAbstract:Thedigit-voicerecorderandplaybacksystemthatthispaperintroducescanbesubstitutedfortraditionaltaperecordsystem.Itsbasicprinepleisthedigitalcontrolfortherecowdeandplaybackofvoice.Forincrease,toincreasepronunciationstoretimeandraiseutilizationratioofthememory,itadoptsnon-distortedtocompressalgorithmbeforestoringtopronunciationsignalandtodecompressintheplayback.Atthesametime,systemthesystemintroducesthedirectstore&accessofdatacollection,andAGConacousticsignalrespectivelytostoreandplaybackcompletely.Keywords:Digitalstore,Playback,Digitalfilter,Sample,A/DConvert,Correcting引言语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展。在数字音频技术和多媒体技术迅速发展的今天,传统的磁带语音录放系统因体积大、使用不便、放音不清晰而受到了巨大挑战。采用单片机对语音进行录放解决体积大的问题。单片机语音录放系统是以数字电路为基础,利用数字语音电路来实现语音信号的数据化、存储、还原等任务,数据化原理语音电路是一种集语音合成技术、大规模集成电路技术以及微控制器技术为一体的一种新型技术。其中关键技术在于:为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放时再进行解压缩。同时,对输入语音信号进行数字滤波以抑制杂音和干扰,从而确保了语音回放的可靠质量。语音集成电路与微处理器相结合,具有体积小、扩展方便等特点,具有广泛的发展前景。1系统方案论证语音编码方案:人耳能听到的声音是一种频率范围为20Hz20000Hz,而一般语音频率最高为3400Hz。语音的采集是指语音声波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号,然后再转换成数字量的全过程。根据“奈奎斯特采样定理”,采样频率必须大于模拟信号最高频率的两倍,由于语音信号频率为3003400Hz,所以把语音采集的采样频率定为8kHz。从语音的存储与压缩率来考虑,模型参数表示法明显优于信号波形表示法4。但要将之运用于单片机,显然信号波形表示法相对简单易实现。基于这种思路的算法,除了传统的一些脉冲编码调制外,目前已使用的有VQ技术及一些变换编码和神经网络技术,但是算法复杂,目前的单片机速度底,难以实现。结合实际情况,提出以下几种可实现的方案。(1)短时平均跨零记数法,该方案通过确定信号跨零数,将语音信号编码为数字信号,常用于语音识别中。但对于单片机,由于处理数据能力底,该方法不易实现。(2)实时副值采样法采样过程如图1.1所示。抽样量化存储图1.1采样过程具体实现包括直存取法、欠抽样采样法、自相似增量调制法等三种基本方法。其中第三种实现方法最具特色,该方法可使数据压缩比例达到1:4.5,既有调制的优点,又同时兼有PCM编码误差较小的优点,编码误差不向后扩散。A/D、D/A及存储芯片的选择:单片机语音生成过程,可以看成是语音采集过程的逆过程,但又不是原封不动地恢复原来的语音,而是对原来语音的可控制、可重组的实时恢复。在放音时,只要依原先的采样直经D/A接口处理,便可使原音重现。(1)A/D转换芯片的选择,根据题目要求采样频率fs=8KHZ,字长=8位,可选择转换时间不超过125µs的八位A/D转换芯片。目前常用的A/D转换实现的方法有多种,鉴于转换速度的要求,我们采用A/D转换芯片AD574。该芯片是高速12位逐次比较型A/D转换器,内置双极性电路构成的混合集成转换显片,具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功能,只需外接少量的阻容件即可构成一个完整的A/D转换5。(2)D/A转换芯片的选择。D/A转换芯片的作用是将存储的数字语音信号转换为模拟语音信号,由于一般的模拟转换器都能达到1s的转换速率,足够满足题目的要求,故我们在此选用了通用D/A转换器DAC0832。(3)数据存储器的选择。当采样频率fs=8KHZ,字长为8位时,一秒钟的语音需要8K字节的存储空间,则存储器至少需要有80k容量。在这里我们选用闪速存储器AT29C040作为存储器,一片该芯片可存储60秒钟的语言。2系统硬件设计数字化语音存储与回放系统的基本思想是通过拾音器将声音信号转化成电信号,再经过放大器放大,然后通过带通滤波器滤波,模拟语音信号通过模数转换(A/D)转换成数字信号,再通过单片机控制将数据从存储器中读出,然后通过数模转换(D/A)转换成模拟信号,经放大再扬声器或耳机上输出。整个系统框架图如图2.1所示:图2.1整体框图系统组成如图所示,由输入通道、AT89C51单片机和输出通道三部分组成。输入通道部分由拾音器、前置放大电路和带通滤波器组成;输出通道由带通滤波器、后级放大电路组成9。拾音器输出的毫伏信号实测其范围约为2025mV,此电信号太小不能够进行采样,后级A/D转换输入信号的动态范围为05V,语音信号的范围与采样范围的比较得出放大器的放大倍数应为200倍左右,此处将信号通过一增益为46dB的放大器,将其放大到伏特量级,输出级放大电路也采用这种电路,两级放大电路都采用增益可调的典型电路。考虑到语音信号的固有特点,将低于300Hz和高于3.4kHz的分量滤掉后语音质量仍然良好。此处将其通过一增益为46dB的放大器,因此,将带通滤波器设计为典型的300Hz3.4kHz,输出级带通滤波器也为300Hz3.4kHz,这样既可滤掉低频分量又可滤掉D/A转换带来的高频分量,很好的滤除掉噪声。根据奈奎斯特抽样定理知欲使采样信号无失真,抽样频率最低为6.8kHZ,考虑到留有一定的余地,这样就足够保证语音质量。经量化后,微处理器将数据存到处理器,需要时再将其回放,存入与放出由开关通过微处理器来控制实现。存储器的容量选择视所存语音信号的时间长短而定。为了使A/D的输入信号稳定在其动态范围内,在输入级加上了自动增益控制电路,同时也使音量稳定。2.1拾音器拾音器是一种声传感器,声传感器是把外界声场中的声信号转换成电信号的传感器。拾音器包括拾音头和音臂等附件,其换能装置主要有压电式、电磁式、电容式以及半导体等。唱针耦合在线圈上的称动圈式,耦合在磁钢上的称动磁式。此外,也有将唱针耦合在衔铁上的称为动铁式,也称可变磁阻式。在本设计中采用动圈式拾音器。2.2放大器的设计增益放大器拾音器输出的毫伏信号实测其范围约为2025Mv,此电信号太小不能够进行采样,后级A/D转换输入信号的动态范围为05V,语音信号的范围与采样范围的比较得出放大器的放大倍数应为200倍左右,所以为了将从拾音器获得的微弱语音信号放大,本系统采用两极高输入阻抗的同向放大器,将其放大到伏特量级,电路图如图2.2所示图2.2增益放大器输出放大器经带通滤波器输出的声音回放信号,其幅度为05V,足以用耳机来收听,可不接任何放大器。但考虑到实际中经常回用到扬声器外放,故在本系统中增加外放功能,前端放大器采用通用型音频功率放大器LM386来完成13。电路如图2.3所示:图2.3输出放大器该电路增益为50200,连续可调,最大不失真功率为325mW。输出端接C4、R9串联电路,以校正扬声器的频率特性,防止高频自激脚7接220uF去偶电容,以消除低频自激为便于该功放在高增益情况下工作,这里将不使用输入端脚2对地短路有源带通滤波器滤波器是一种能使有用频率信号通过同时抑制(或衰减)无用频率信号的电子装置。工程上常用它来作信号处理、数据传输和抑制干扰等。这种滤波电路主要由无源元件R、L和C组成的有源滤波电路。此外,由于集成运放的开环电压增益和输入阻抗都很高而输出阻抗很底,所以构成的有源滤波电路具有一定的电压放大和缓冲作用。声音信号经动圈拾音器转有源滤波器换成电压信号,通过前级放大,在对其进行数据采集之前,有必要经过带通滤波器除带外杂波,选定该滤波器的通带范围为300Hz3.4KHz,其作用是:(1)保证3003400Hz的语音信号不失真的通过滤波器;(2)滤除通带外的低频信号,以减少带外功频等分量的干扰,大大减少噪声影响,该下限频率可下延到270Hz左右;(3)便于滤除通带外的高次谐波,以减少因8kHz采样率而引起的混叠失真,根据实际情况,该上限频率可在2700Hz左右,带通滤波器按品质因数Q的大小为窄带滤波器(10)和带通滤波器(10)两种,本题中,上限频率fh=3400Hz,通带滤波器中心频率f0与品质因数分别为f0=1010HzQ=显然,Q10,故该带通滤波器为宽带带通滤波器。宽带带通滤波器由高通和低通滤波器级联构成,鉴于Butterworth滤波器带内平坦的响应特性,我们选用二阶Butterworth带通滤波器,电路如图2.4所示:图2.4带通滤波器实验证明,该滤波器能有效的滤除低频分量,大大减少噪声干扰,与之同时也绿除了多余的高频分量,消除了高频失真,性能足以满足要求。2.3可调稳压电源的设计这里介绍的稳压电源,采用三端可调稳压集成电路LM317,外围电路十分简单,便于制作。该稳压电源,电压可调范围1.525V,最大负载电流1.5A。电路如图2.5所示:图2.5可调直流稳压电源220V交流电经变压器TR1降压,得到24V交流电,再经VD1VD4组成的全桥整流,由C1滤波后得到33V左右的直流电压。该电压经集成电路LM317后得稳压输出,调节电位器RV1,即可连续调节输出电压。图中C2用以消除寄生振荡,C3的作用是抑制纹波,C4是用以改善稳压电源的的暂态响应,VD6、VD7在输出端电容漏电或调整端短路时起保护作用。VD5为本电源的工作指示灯,电阻R1是限流电阻。输出端接微型电压表PV,可以直观的指示输出电压值。各元件具体参数如图所标。2.4T89C51介绍AT89C51AAT89C51是一种带4K字节片内程序存储器,且是高性能CMOS8位微处理器,俗称单片机。它有40个引脚,4个8位并行输入/输出(I/O)端口:P0、P1、P2、P3,其中,P1是完整的8位准双向I/O口,两个外中断,2个16位可编程定时/计数器,两个全双向串行通信口,一个模拟比较放大器。管脚如图2.6所示。(1)引脚介绍P0口:P0口为一个8位漏级开路双向I/O口,用于外部程序数据存储器,可以被定义为数据/地址的第八位。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,可用作输出。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,当P3口写入1后,它们被内部上拉为高电平,用作输入。当外部下拉为低电平,P3口将输出电流,作为输出。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 PSEN:外部程序存储器的选通信号。EA/VPP:当/EA保持低电平时,则在此期间选通外部程序存储器不管有无内部程序存储器。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。图2.6AT89C51引脚图(2)主要性能指标a.与MCS-51兼容b.4K字节可编程闪烁存储器c.三级程序存储器锁定d.128*8位内部RAMe.32可编程I/O线f.两个16位可编成定时器/计数器g.5个中断源h.低功耗的闲置和掉电模式i.片内振荡器和时钟电路,时钟频率1.212MHz;可有时钟输出j.有强的位寻址位处理能力(3)CPU时钟电路AT89C51单片机有一个高增益反向放大器,用于构成振荡器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。在XTAL1和XTAL2两端跨接晶体或陶瓷振荡器,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟发生器,见图2.7所示:图2.7AT89C51的时钟电路外接晶振时,C1、C2值通常选择为30pF左右;外接陶瓷振荡器时,C1、C2约为47pF。C1、C2对频率有微调作用,震荡频率范围是1.212MHz。(4)复位电路AT89C51通常采用上电自动复位和按键手动复位两种方式。上电复位电路在通电瞬间,在RC电路充电过程中,RST端出现正脉冲,从而使单片机复位。按键手动复位又分为按键电平复位和按键脉冲复位,按键电平复位是将复位端通过电阻与Vcc相连,按键脉冲复位是利用RC微分电路产生正脉冲来达到复位的目的。2.5D/A、A/D转换器2.5.1D/A转换器DAC0832的介绍主要性能指标分辨率,通常将输入数字量的最低有效位LSB变化1时所引起的输入电压的变化V称为分辨率,即V=Vm/2,式中,Vm为输出电压的满度值;n为D/A转换器的二进制数的位数。建立时间,当DAC输入数字量发生变换时,输出模拟电压也随之改变,但输出电压变化到稳定值时相对于输入数字量的变化有一段延迟时间,这段延迟时间就称为建立时间,用ts表示。建立时间越短,DAC的转换速度越块。通常用转换时间来反映建立时间,如DAC0832的转换速度为100ns,DAC0832的转换速度为0.1ms。转换误差,转换误差可以用绝对误差或相对误差r来表示。绝对误差是指DAC的输入端加有固定的数字代码时,实际测得模拟输出值理论值之间的差。相对误差r是指绝对误差与满度值之比,常用百分数表示。电源抑制比,DAC的输出电压的变化量与相对应的电源电压变化量之比定义为电源抑制比。要求电源电压发生变化时,对输出电压的影响越小越好。表2.1DAC0832的引脚2.5.2A/D转换器DA574的介绍AD574的特点及功能AD574是AD公司生产的12位逐次逼近型ADC,它的转换速度为25s,转换精度为0.05%,可广泛应用在数据采集系统中。由于AD574芯片内有三态输出缓冲电路,因而可直接与单片机的数据总线相连,而无须附加逻辑接口电路。引脚分布如图2.8所示:图2.8AD574的引脚图CS:片送。CE:片启动。R/C:读出/转换控制。12/8:数据输出格式选择脚。当12/8为1(+5V)时,12条数据线将同时行输出;当12/8为0(0V)时,为8位双字节输出。A0:字节选择线。在转换期间,当A0为0时,AD574进行全12位转换;当A0为1时,进行8位转换。在读出期间,当A0为0时,输出高8位;当A0为1时,输出低4位,并以4个0作为尾随的4位以补足8位,即当两次读出12位数据时,应遵循左对齐原则。STS:输出状态指示引脚。转换开始时,STS为高电平,并在转换过程中保持高电平。转换完成后,STS返回到低电平。STS可以作为状态信息被CPU查询;也可以在它的下降沿向CPU发出中断请求,以通知A/D转换已完成,同时CPU可以读出转换结果。2.6存储器的选择62256是32K的低功耗静态RAM存储器.用P0和P2来扩展外部ram(就是用P0和P2与62256对应的管脚相连接),假设P2.7接WR,P2.6接RD,P2.5接CS,那么就可以确定个外部RAM的一个地址,想往外部RAM的一个地址写一个字节时,地址可以定为XBYTE0x4000,其中WR,CS为低,RD为高,那就是高位的4(0100也就是P2.7和P2.5输出了低电平,而P2.6输出了高电平,目的当然是要选通62256并且向62256写入数据),其它位的可以根据情况自己定(也就是其它位是什么不打紧,关键就是控制wr,cs,rd的那几个位要符合选通,读,写的规定就可以了),现在我们向62256中写个26进去就可以使用这条语句:XBYTE0x4000=26。MCS-51单片机系统扩展时,一般使用P0口作为地址低8位(与数据口分时复用),而P2口作为地址高8位,它共有16根地址总线,寻址空间为64KB。图2.962256引脚图2.7键盘的设定本系统只涉及到录音播放和复位,所以键盘由三个按键组成。当录音键按下时启动单片机和A/D转换芯片工作,存储器满则自动保存;当放音键按下时启动单片机和D/A转换芯片工作,放音完成则自动停止;复位键有两种情况,录音时按下复位键则暂停录音,再按下就继续录音,若按连续按两下则重新录音;当放音时按下复位键则暂停放音,再按下就继续放音,若按连续按两下则重新放音。图2.10键盘按键3各模块接口原理31AT89C51和AD574的接口原理AD574和AT89C51系统的基本组成主要有单片机、A/D转换器和计算机接口。其中单片机是系统的核心部分,单片机发出控制信号以启动A/D转换器进行采样,然后将转换结果存入双端口SRAM。系统的硬件设计在连接上应主要考虑三总线(控制总线、地址总线、数据总线)的连接,连接方式如图2.9所示:图3.1单片机AT89C51与AD574的接口图图中AD574是1个完全的单片式12位逐次比较型A/D转换器,它带有可以直接与8位或16位总线接口的三态缓冲器,因而不需要再加锁存器。由于AD574片内自带高精度参考电压和时钟,因此不需要外部电路和时钟就可全速工作,是一种常用的中速A/D转换芯片。AT89C51的主要任务如下:(1)接收主机的采样命令。即利用P1.7口并采用查询方式等待键盘发出采样命令,当其为低电平时,启动采样过程。(2)启动采样。AT89C51利用P2.7经过反相后控制AD574的读出和启动转换控制线R/C,并再经过与非门和反相器来控制片选线CS(低电平有效)。当P2.7为高电平时,所有AD574都处于待启动状态,即设定各AD的启动地址均#FFFFH。AT89C51的WR、RD经过与非门接到AD574的使能端,任意有效信号都会使能AD。(3)读取并存储转换结果。所有AD转换结束与否的判断均由P1口的低4位来进行,当低4位均为低电平时,表示所有转换都已结束。进行读取操作时,地址应为对应存储器单元的操作地址,因为存储器单元地址的末尾2位数依次为00、01、10、11,因此,对单元操作也就是表示对相应编号的A/D转换器进行了读操作。(4)发出中断。当存储数据时,P2.2的状态可以判断存储器是否已满。该电路采用单极性输入方式,可对010V或020V模拟信号进行转换。转换结果的高8位从D11D4输出,低4位从D3D0输出,并且直接和单片机的数总线相连。转换遵循左对齐原则,D3D0应接单片机数据总线的高半字节。为了实现启动A/D转换和转换结果的读出,AD574的片选信号CS由地址总线的次低位A1(P0.1)提供,在读写时,A1应设置为低电平。AD574的CE信号由单片机的WR和A7(P0.7)经一级或非门产生。R/C则由RD和A7经一级或非门提供。可见在读写时,A7亦应为低电平。输出状态信号STS接到P3.2端可供单片机查询判断A/D转换是否结束。AD574的A0由地址总线的最低位A0(P0.0)控制,可用于实现全12位转换,并将12位数据分两次送入数据总线。3.2DAC0832与单片机的接口原理正常情况下DAC0832与单片机的接口应为4条数据线,分别是CS、CLK、D0、D1。但由于DO端与D1端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和D1并联在一根数据线上使用,如图3.2所示:图3.2DAC0832与AT89C51的接口图单片机对ADC0832的控制原理:当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/D1的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/D1端则使用D1端输入通道功能选择的数据信号。在第1个时钟脉冲的下沉之前D1端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前D1端应输入2位数据用于选择通道功能。3.3存储芯片与单片机的接口原理6225662256是32K的低功耗静态RAM存储器.用P0和P2来扩展外部RAM(就是用P0和P2与62256对应的管脚相连接),假设P2.7接WR,P2.6接RD,P2.5接CS,那么就可以确定一个外部RAM的一个地址,如下图3.3所示:图3.362256与AT89C51的连接其中WR,CS为低,RD为高,那就是高位的4(0100也就是P2.7和P2.5输出了低电平,而P2.6输出了高电平,目的当然是要选通62256并且向62256写入数据),其它位的可以根据情况自己定(也就是其它位是什么不打紧,关键就是控制wr,cs,rd的那几个位要符合选通,读,写的规定就可以了)。MCS-51单片机系统扩展时,一般使用P0口作为地址低8位(与数据口分时复用),而P2口作为地址高8位,它共有16根地址总线,寻址空间为64KB。3.4系统接口总图完完成了各模块的设计,接下来是系统整体的连接以及系统功能的实现,单片机作为系统的核心,控制着所有芯片的启停。录音键按下单片机启动AD574,麦克风将将采集的语音信号经放大器放大滤波放大后送往AD574转换成数字信号存放在存储芯片62256中;当放音键按下时,单片机启动DAC0832并将存储器中的数据送往DAC0832经滤波网络和后置放大器放大最后由扬声器将声音还原。系统接口原理如图3.4所示:3.4系统原理图3.5系统的校正首先对频域中的函数进行分析,在频域304030H范围内的曲线如图3.5所示:图3.5函数分析图由图可见,它近似于阻带内增益变化极为缓慢近于恒定的高通滤波器。进一步分析可知,该曲线在频率很高处有大幅度的下降,故可用带通滤波器来拟合该曲线,由于受单片机数据运算处理能力的限制,数字滤波不易实现,故这里采用硬件滤波,滤波电路如图3.6所示。图3.6滤波电路该滤波网络采用简单的无源滤波网络即可实现,图中、构成初始放大倍数近乎恒定的网络.观察到在频率较高处有大幅度的衰减,故该网络还应满足在频率较高处的衰减特性,考虑到对于声音信号,过多的高频分量只能增加噪声,所以后接、构成低通滤波器,截止频率设在3.4KHz100Hz。该网络在频域由30Hz起,增益缓慢增大,到3.4kHz处幅频。4软件设计单片机AT89C51通过片选方式扫描键盘,有录音键按下则录音,同时录音过程中若有复位键按下则暂停录音,返回检测键盘,有复位键则继续录音,若连续按两下复位键则清空存储器重新录音;存储器满则自动返回,当有放音键按下则开始播放,播放过程中若检测到复位键则暂停播放,在检测到复位键则继续播放,若连续检测到两次复位键则重新播放。程序设计流程图如图4.1所示:图4.1程序流程图5结论本论文是采用单片机来实现语音录放系统的设计,解决了以前用磁带记录的缺陷,单片机语音录放系统是数字电路为基础,利用数字语音电路来实现语音信号的记录、存储、还原等。它具有体积小,使用方便,可灵活扩展等优点。通过此语音录放系统的设计可以看出,数字语音系统比模拟语音系统更方便,更灵活,它是以后语音系统发展的趋势。由于本人知识的欠缺和实验条件的限制,本设计还存在许多的不足之处,只完成了理论部分的工作,没有做出仿真和硬件的制作。再以后的工作中,我会继续努力提高自己的知识水平,定在电子专业方面做出贡献。答谢:经过半年的忙碌和工作,本次毕业设计已经接近尾声,作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有彭光含导师的督促指导,以及一起学习的同学们的支持,想要完成这个设计是难以想象的。彭老师平日里工作繁多,但在我做毕业设计的每个阶段,从外出实习到查阅资料,设计草案的确定和修改,中期检查,后期详细设计,装配草图等整个过程中都给予了我悉心的指导。除了敬佩彭老师的专业水平外,他的治学严谨和科学研究的精神,也是我永远学习的榜样,并将积极影响我今后的学习和工作。也要感谢和我一起作毕业设计的宿舍同学,在他们的帮助下顺利完成毕业设计。最后要感谢大学四年来所有的老师和同学,有了你们的支持和鼓励。此次毕业设计才会得以顺利完成。参考文献1单片机原理及应用.张毅刚.高等教育出版社2003.2现代语音处理技术及应用.张雄伟编著.北京:机械工业出版社,2003.83c程序设计.谭浩强.北京:清华大学出版社19994姚晓亮刘春河杨林杰,一种数字化语音存储与回放系统的设计,芯片应用,2007,6:127-1295黄恩,魏炜,邹搜涛,等。数宇化语音存储与回放系统硬件设计。中国仪器仪表,2003,3:42-44.6谢自美。电子线路设计实验测试。华中科技大学出版社。2000.57康华光。电子技术基础(第四版).北京:高等教育出版社,1999.8高海春,任开达,孔德峰,等。数字化语音存储与回放系统,华东船舶工业学院学报。2000,6:76-79。9SusanA.R.Garrod,RobortJ.Borns.Digitallogic-analysisapplicationanddesign.HoltRinehartandWinston,inc.,1991.10ABookonC:ProgramminginC,FourthEdition美AlKelley,IraPohlAddisonWesley/Pearson2004附录系统总程序BZ1:EQU20HBZ2:EQU21HBZ3:EQU22HMOV20H,#00HMOV21H,#00HMOV22H,#00HSETBEASETB1TSETBEX0MAIN:MOVR1,#80HMAIN0:MOVA,20HCJNEA,#01H,MAIN1JMPCCMAN1:MOVA,21HCJNEA,#01H,MAIN2JMPFFMAIN2:MOVDPTR,#0EFFFHMOVXA,DPTRMOVDPTR,#0DFFFHMOVXDPTR,AMOVDPTR,#0BFFFHMOVA,R1DECAMOVR1,ACJNEA,#00H,MAIN0JMPMAINCC:MOV21H,#00HMOVR2,#0FFHMOVR3,#0FFHCC0:MOVA,22HMOVR1,#80HCJNEA,#00H,CC1MOV22H,#00HJMPMAINCC1:MOVDPTR,#0FFF7HMOVXA,DPTRMOVDL,R2MOVDH,R3MOVXDPTR,ADECR2CJNER2,#00H,CC2MOVR2,R3CC2:MOVDPTR,#0FFFBHMOVXDPTR,AMOVDPTR,#0FFFEHMOVA,R1MOVXDPTR,ADECAMOVR1,ACJNEA,#00H,CC1JMPCC0FF:MOV20H,#00HMOVR2,#FFHMOVR3,#0FFHFF0:MOVA,22HMOVR2,#80HCJNEA,#00H,FF1FF1:CJNER2,#00H,FF2JMPMAINFF2:MOVDL,R2MOVDH,R3MOVXA,DPTRMOVDPTR,#0FFBHMOVXDPTR,ADECR2CJNER2,#00H,FF3MOVR2,R3FF3:MOVDPTR,#0FFFEHMOVA,R1MOVXDPTR,ADECAMOVR1,ACJNEA,#00H,FF1JMPFF0中断程序如下:(1) 键盘中断:2D:JNBP10K1JNBP11K2JNBP12K3JNBP13K4JNBP14K5JNBP15K6JMP2DK1:ACALLDELAYJNBP10K11JMPP102DK2:ACALLDELAYJNBP11K21JMP2DK3:ACALLDELAYJNBP12K31JMP2DK4:ACALLDELAYJNBP13K41JMP2DK5:ACALLDELAYJNBP14K51JMP2DK6:ACALLDELAYJNBP15K61JMP2DK11:MOVR0,#10H;置0.2ms/divRET;返回中断K21:MOVR0,#20H;置2ms/divRET;返回中断K31:MOVR0,#40H;置20ms/divRET;返回中断K41:MOV20H,#01H;置0.2ms/divRET;返回中断K51:MOV21H,#01H;置0.2ms/divRET;返回中断K61:MOV22H,#01H;置0.2ms/divRET;返回中断(2)A/D转换器中断:89C51单片机采用中断方式读取转换的结果,A/D转换的程序如下:MOVA,00H;指定IN0的通道号MOVDPTR,#OEFFFH;指向0809的口地址MOVXDPTR,A;启动0809转换LOOP:AJMPLOOP;等待转换结束采用中断方式等待转换结束的A/D转换和D/A转换程序如下:ORG0000H;复位AJMPSTA