数字化语音存储与回放系统高海春,任开达,孔德峰,徐和杰,李文瑜(华东船舶工业学院电子与信息系,江苏镇江212003)摘要:设计并制作了一个数字化语音存储与回放系统,由于采用了滑动平均值滤波法进行数字滤波及非失真压缩算法,该系统获得了稳定的性能。关键词:语音;单片机应用;回放系统0引言传统的磁带语音录放系统因其体积大、使用不便,在电子与信息处理的使用中受到许多限制。本文提出的体积小巧,功耗低的数字化语音存储与回放系统将完全可以替代它。数字化语音存储与回放系统的基本原理是对语音的录音与放音的数字控制。其中,关键技术在于:为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放时再进行解压缩;同时,对输入语音信号进行数字滤波以抑制杂音和干扰,从而确保了语音回放的可靠质量。1基本原理1)语音采集原理人耳能听到的声音是一种频率范围为20Hz~20000Hz,而一般语音频率最高为3400Hz。语音的采集是指语音声波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号,然后再转换成数字量的全过程。根据“奈奎斯特采样定理”,采样频率必须大于模拟信号最高频率的两倍[1],由于语音信号频率为300~3400Hz,所以把语音采集的采样频率定为8kHz。2)语音生成原理单片机语音生成过程,可以看成是语音采集过程的逆过程,但又不是原封不动地恢复原来的语音,而是对原来语音的可控制、可重组的实时恢复。在放音时,只要依原先的采样值经D/A接口处理,便可使原音重现。2硬件设计2.1单片机系统控制电路本系统主要由8031、ADC0808、DAC0832、8255及RAM62256组成,其中ADC0808、DAC0832及8255的片选信号由8031的高位地址经74LS138译码所得。在电路中利用8255进行数字存储器的扩展,其中PB,PC用于扩展地址,PA用于扩展数据。2.2A/D电路A/D电路由模拟语音信号处理电路及A/D转换电路组成。其工作原理如图1。图1A/D电路整个模拟语音信号输入处理电路,包括:前置放大器、带通滤波器及电平范围调整电路。一般麦克风输出电平为几十毫伏,经增益约为46dB的前置放大器A1放大至1V左右的范围,以便推动后级电路。带通滤波器的通带为300~3400Hz,系统的采样频率定为8kHz,即每秒钟采样8000点语音数据,每一点数据以一个字节表示电平范围调整电路是将原先双极性的语音信号转换到0~5V的范围,以满足ADC0808对接口信号的要求。2.3D/A电路图2为D/A转换的工作原理图。D/A芯片DAC0832是8位双极性电流驱动的数模转换器。图2D/A转换器由于所要转换输出的信号为语音信号,其本身是双极性的信号,因此对杂音的处理尤其重要。在无信号输出时,希望其输出对地是零电位,因此应用两组运算放大器作为电流到电压的转换器,完成双极性控制的目的。数字信号经D/A转换、双极性电流至电压变换后已成为模拟语音信号,经带通滤波器再送往音频功率放大器,做适当的功率提升而推动喇叭。214带通滤波器设计为了滤除不必要的干扰及杂波,系统前向通道和后向通道中各设计了一个通带为300Hz~3400Hz的带通滤波器。此带通滤波器由一个低通滤波器和一个高通滤波器串联而成。其中低通滤波器上限频率为3400Hz,高通滤波器下限频率为300Hz,电路如图3所示,其中A1构成低通滤波器,A2构成高通滤波器。如选R1=R2,C1=C2,R5=R6,C3=C4,则有:fH=1/(2πR1C1)、fL=1/(2πR5C3),故很易选定各参数值[2]。图3带通滤波器电路3软件设计3.1总体程序设计系统程序由三部分组成,即主程序、键盘中断处理程序和系统定时器中断处理程序。各部分程序功能如下所述:1)主程序程序中将程序运行状态分为四种,即FREE(空闲态)、RECORD(录音)、PLAY(回放)、ALARM(录音完毕报警)。在主程序中仅依靠当前状态设置各LED的亮或灭,以指示当前工作状态。2)键盘中断处理程序键盘中断处理程序框图如图4。若“录音”键按下,则设置当前状态为“RECORD”,若“放音”键按下,则设置当前状态为“PLAY”。3)定时器中断处理程序由定时器产生定时中断,定时时间为0.125ms。在程序中对应于当前不同的工作状态做相应的处理。程序流程如图5。3.2数字滤波程序输入A/D转换器的信号虽然经过带通滤波器滤波,但由于ADC0808进行A/D转换时,末位数据会有跳变,故产生了高频信号,...