基于ADPCM的数字语音存储与回放系统设计方案(二)
扫描二维码
随时随地手机看文章
4 程序设计
系统软件部分由单片机的C51语言和FPGA的Ver-ilogHDL语言组成。其中,单片机主要完成用户输入输出处理和系统的控制,FPGA主要完成需要严格时序控制(如数据采集、频谱显示)以及大规模数据计算(如FFT、ADPCM 编码)等。整个系统的设计中模块化思想贯穿始终,采用菜单键选择所用功能,系统流程图如图10 所示。
5方案测试与结果
5.1 测试仪器
测试仪器包括直流稳压稳流电源,型号为SG1733SB3A;60M 数字存储示波器,型号为TektronixTDS1002;秒表。
5.2 方案测试与结果
5.2.1 语音存储与回放效果测试
(1)一名组员面对麦克风以不同大小的声音说话,录下一段语音,记录回放语音的效果,结果见表1.
(2)由耳机输入不同音量的立体声音乐,录下一段语音,记录回放语音的效果,结果见表2.
5.2.2 语音存储时间测试
(1)由耳机不间断地输入立体声音乐,启用录音模式,待系统显示存储器存满后,回放语音,用秒表记录语音回放最长时间,结果见表3.
(2)一名组员面对麦克风不间断地说话,启用录音模式,待系统显示存储器存满后,回放语音,用秒表记录语音回放最长时间,结果见表4.
5.2.3 语音频谱分析及显示测试
由耳机或麦克风输入一段语音信号,由扬声器直接播放出来,同时在示波器上实时显示频谱。测试结果为当播放的声音变化时,可观察到频谱有相应的明显变化。
由于不能明确知道语音信号的实时频率和幅度信息,故只对频谱进行了定性测试。
6总结
该系统设计方案实现了语音存储及回放,最长存储时间达2 min,回放语音效果清晰良好,并能在示波器上实时显示语音频谱。采用ADPCM 编码在保证回放音质的情况下,极大地提高了存储器的利用率,并通过对语音信号采用分帧加窗的方法实现了短时频谱分析。
另外,系统采取了一系列抗干扰措施以减小噪声,如数字地与模拟地分开走线,在一点汇合;电源处采用一个10 μF和0.1 μF的电容并联去耦;时钟走线尽量短等。但系统在语音回放时仍存在一定的噪声,尤其当输入语音音量较小时,噪声更为明显,这是本方案需要完善的地方。(作者:李涛,曾攀 ,肖功海)