第 14 卷第 3 期
2000 年 6 月
华 东 船 舶 工 业 学 院 学 报
Journal of East China Shipbuilding Institute
Vol
14 No
J un. 2000
3
文章编号 : 1006 - 1088 (2000) 03 - 0076 - 04
数字化语音存储与回放系统
高海春 , 任开达 , 孔德峰 , 徐和杰 , 李文瑜
(华东船舶工业学院电子与信息系 , 江苏 镇江 212003)
摘 要 : 设计并制作了一个数字化语音存储与回放系统 ,由于采用了滑动平均值滤波法进行数字滤波
及非失真压缩算法 ,该系统获得了稳定的性能 。
关键词 : 语音 ; 单片机应用 ; 回放系统
中图分类号 : TP368. 1 文献标识码 : A
0 引 言
传统的磁带语音录放系统因其体积大 、使用不便 ,在电子与信息处理的使用中受到许多限制 。本文
提出的体积小巧 ,功耗低的数字化语音存储与回放系统将完全可以替代它 。数字化语音存储与回放系
统的基本原理是对语音的录音与放音的数字控制 。其中 ,关键技术在于 :为了增加语音存储时间 ,提高
存储器的利用率 ,采用了非失真压缩算法对语音信号进行压缩后再存储 ,而在回放时再进行解压缩 ;同
时 ,对输入语音信号进行数字滤波以抑制杂音和干扰 ,从而确保了语音回放的可靠质量 。
1 基本原理
1) 语音采集原理
人耳能听到的声音是一种频率范围为 20 Hz~20 000 Hz ,而一般语音频率最高为 3 400 Hz。语音
的采集是指语音声波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号 ,然后再转换成数
字量的全过程 。根据“奈奎斯特采样定理”, 采样频率必须大于模拟信号最高频率的两倍 1
,由于语音
信号频率为 300~3 400 Hz ,所以把语音采集的采样频率定为 8 kHz。
2) 语音生成原理
单片机语音生成过程 ,可以看成是语音采集过程的逆过程 ,但又不是原封不动地恢复原来的语音 ,
而是对原来语音的可控制 、可重组的实时恢复 。在放音时 ,只要依原先的采样值经 D/ A 接口处理 ,便可
使原音重现 。
2 硬件设计
2. 1 单片机系统控制电路
本 系统主要由8031 、ADC0808 、DAC0832 、8255及 RAM62256组成 ,其中ADC0808 、DAC0832及
收稿日期 : 1999 - 12 - 30
作者简介 : 高海春 (1978 - ) ,男 ,江苏扬州人 ,华东船舶工业学院电子与信息系学生 。“数字化语音存储与回放系统”获 1999 年全国
大学生电子制作大赛江苏赛区二等奖 。
2
第 3 期 高海春等 : 数字化语音存储与回放系统
77
8255 的片选信号由 8031 的高位地址经 74L S138 译码所得 。在电路中利用 8255 进行数字存储器的扩
展 ,其中 PB ,PC 用于扩展地址 ,PA 用于扩展数据 。
2. 2 A/ D 电路
A/ D 电路由模拟语音信号处理电路及 A/ D 转换电路组成 。其工作原理如图 1 。
图 1 A/ D 电路
Fig. 1 A/ D circuit
整个模拟语音信号输入处理电路 ,包括 :前置放大器 、带通滤波器及电平范围调整电路 。一般麦克
风输出电平为几十毫伏 ,经增益约为 46 dB 的前置放大器 A 1 放大至 1 V 左右的范围 ,以便推动后级电
路 。带通滤波器的通带为 300~3 400 Hz ,系统的采样频率定为 8 kHz ,即每秒钟采样 8 000 点语音数
据 ,每一点数据以一个字节表示 。电平范围调整电路是将原先双极性的语音信号转换到 0~5V 的范
围 ,以满足 ADC0808 对接口信号的要求 。
2. 3 D/ A 电路
图 2 为 D/ A 转换的工作原理图 。D/ A 芯片 DAC0832 是 8 位双极性电流驱动的数模转换器 。
图 2 D/ A 转换器
Fig. 2 D/ A transformer
由于所要转换输出的信号为语音信号 ,其本身是双极性的信号 ,因此对杂音的处理尤其重要 。在无
信号输出时 ,希望其输出对地是零电位 ,因此应用两组运算放大器作为电流到电压的转换器 ,完成双极
性控制的目的 。
数字信号经 D/ A 转换 、双极性电流至电压变换后已成为模拟语音信号 ,经带通滤波器再送往音频
功率放大器 ,做适当的功率提升而推动喇叭 。
2
4 带通滤波器设计
为了滤除不必要的干扰及杂波 ,系统前向通道
和后 向 通 道 中 各 设 计 了 一 个 通 带 为 300 Hz ~
3 400 Hz 的带通滤波器 。此带通滤波器由一个低
通滤波器和一个高通滤波器串联而成 。其中低通滤
波器上限频率为 3 400 Hz ,高通滤波器下限频率为
300 Hz ,电路如图 3 所示 ,其中 A 1 构成低通滤波
图 3 带通滤波器电路
Fig. 3 Band
器 , A 2 构成高通滤波器 。如选 R 1 = R 2 , C1 = C2 ,
pass filter
R 5 = R 6 , C3 = C4 ,则有 : f H = 1/ (2πR 1 C1) 、f L = 1/ (2πR 5 C3) ,故很易选定各参数值[2 ] 。
3 软件设计
3. 1 总体程序设计
系统程序由三部分组成 ,即主程序 、键盘中断处理程序和系统定时器中断处理程序 。各部分程序功
能如下所述 :
华 东 船 舶 工 业 学 院 学 报
87
2000 年
1) 主程序
程序中将程序运行状态分为四种 ,即 FREE (空闲态) 、
RECORD(录音) 、PLA Y (回放) 、ALARM (录音完毕报警) 。
在主程序中仅依靠当前状态设置各 L ED 的亮或灭 ,以指示当
前工作状态 。
2) 键盘中断处理程序
键盘中断处理程序框图如图 4 。若“录音”键按下 ,则设
置当前状态为“RECORD”,若“放音”键按下 ,则设置当前状态
为“PLA Y”。
3) 定时器中断处理程序
由定时器产生定时中断 ,定时时间为 0. 125 ms。在程序
中对应于当前不同的工作状态做相应的处理 。程序流程如图
5 。
图 4 键盘中断处理程序框图
Fig. 4 Block diagram of the keyboard
interrupt processing program
图 5 定时器中断处理程序框图
Fig. 5 Block diagram of the timer interrupt processing program
3. 2 数字滤波程序
输入 A/ D 转换器的信号虽然经过带通滤波器滤波 ,但由于 ADC0808 进行 A/ D 转换时 ,末位数据
会有跳变 ,故产生了高频信号 ,因此要进行数字滤波 。数字滤波方法主要有算术平均值滤波 、加权平均
值滤波 、滑动平均值滤波等 3 。其中算术平均值滤波和加权平均值滤波都要采样多个数据 ,然后求算
术平均值或加权平均值 ,但由于必须采样多次 ,故检测速度较慢 ,所以采用滑动平均值滤波 。其算法为 :
先在存储器 RAM 中建立一个数据缓冲区 ,依次存放 8 个数据 ,每采进一个新数据 ,就将最早采集的那
个数据丢掉 ,而后求包括新数据在内的 8 个数据的算术平均值 。这样每进行一次采样 ,即可算出一个新
平均值 ,大大增加了数据处理的速度 。其具体程序流程 ,这里就不再赘述 。
3
3 语音压缩与解压
由于数字语音信号数据庞大 ,10 s 语音信号数据即需 80 K 存储器 ,为了提高存储器的利用率 ,必须
进行数据压缩 。数据压缩算法可分为失真压缩算法和非失真压缩算法 。失真压缩算法一般是对信号进
行付立叶变换 ,然后抽取有用频率分量 ,解压时进行反变换 ,从而恢复有用信号 ,采用此种压缩算法压缩
量较大 ,但本系统却不宜采用 ,主要原因有两点 : ①语音信号频带较窄 ,采用付氏变换会丢失部分有用
频率分量 ,从而引起失真 。 ②付氏变换运算量庞大 ,8 位单片机很难应付 。所以采用非失真压缩算法 。
其具体算法为 :当有两个以上连续相等的数据时 ,可以用三个字节表示 ,即前两个字节相等表示被压缩
的数据值 ,后一个字节表示重复的次数 。由于语音信号自身的特点 ,即冗余度大 ,这就为此种压缩提供
2
2
第 3 期 高海春等 : 数字化语音存储与回放系统
97
了可能 。同样 ,在解压时 ,程序读入数据流 ,当遇到两个相等数据时则重复此数 ,重复次数由后一个数据
决定 。其压缩算法程序框图如图 6 所示 。
4 测试结果
4
1 放大器测试
系统中有两个放大器 :一个是前置放大
器 ,另一个是功率放大器 。放大器设计为增
益可调 ,实际测试中增益范围为 0~60 dB 。
4. 2 带通滤波器测试
在数据采集和数据输出中所用的两个带
通滤波器电路完全一致 。在测试中 ,一个带
通滤波器的通带是 300~3 400 Hz ,另一个
是 400~3 400 Hz。
4. 3 语音存储时间测试
图 6 压缩算法流程
Fig. 6 Block diagram of the pressing arithmetic
在没有进行语音压缩时 ,语音存储时间实测约 13 s ,采用压缩算法以后存储时间在 20 s 以上 。
4. 4 录 、放音测试
将语音信号从麦克风输入 ,待存储器存满后 ,按放音键回放语音信号并调整放大器增益 ,使语音信
号不失真地输出 ,实现系统功能 。结果表明 :该系统增益调节宽 ,抑制杂音能力强 ,数字化语音存储时间
长 。随着语音功能在电子信息业中的使用越来越普及 ,本系统必将有很广阔的应用前景 。
参考文献 :
1 程佩青. 数字信号处理教程 M . 北京 :清华大学出版社 ,1995.
2 李 华. MCS 系列单片机实用接口技术 M . 北京 : 北京航空航天大学出版社 ,1993.
3 潘新民. 单片机实用系统设计 M . 北京 : 人民邮电出版社 ,1992.
Digital Voice Storage and Playback System
GA O Hai
chun , R EN Kai
da , KON G De
f eng , X U He
jie , L I Wen
y u
(Dept . of Electronics and Information , East China Shipbuilding Institute , Zhenjiang Jiangsu 212003 ,China)
Abstract : An excellent method is presented to design digital voice storage and playback system. Because of
application of no distortion compress algorithm and moving average value filtering algorithm for digital fil
ter , the performance of the digital voice storage and playback system can be greatly stable.
Key words : voice ; single
chip computer application ; playback system
(责任编辑 : 汪时美)