《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于单片机的8×4数字语音混音矩阵模块设计
基于单片机的8×4数字语音混音矩阵模块设计
来源:微型机与应用2013年第11期
罗纯哲,李探元
(91245部队,辽宁 葫芦岛 125001)
摘要: 提出了一种8×4数字语音混音矩阵模块方案。模块基于STC12C5A60S2单片机和4通道并行D/A转换芯片。给出了模块软硬件设计方案,讨论了模块实现中的设计难点。实际验证结果表明达到了预期设计目标。
Abstract:
Key words :

摘  要: 提出了一种8×4数字语音混音矩阵模块方案。模块基于STC12C5A60S2单片机和4通道并行D/A转换芯片。给出了模块软硬件设计方案,讨论了模块实现中的设计难点。实际验证结果表明达到了预期设计目标。
关键词: 数字混音音频电平;阈值

 在有线语音指挥调度系统中根据需要对下级用户送来的多路语音信号进行混音处理,传统方法采用矩阵和集成运放求和电路实现,存在硬件组成复杂、占用安装空间大、抗干扰能力和可靠性差等不足。本方案以宏晶公司生产的新型1T高速单片机STC12C5A60S2为核心,利用片内丰富的A/D资源和辅助的4通道并行D/A转换器构成了一个8×4数字语音混音矩阵硬件,通过软件实现了8路语音信号的4路混音输出和动态静噪功能,具有混音功能设置灵活、调试方便等优点。
1 总体设计方案
 总体设计框图如图1所示,单片机STC12C5A60S2为控制核心,通过串口接受混音状态设置,通过A/D转换口对8路输入缓冲器输出的语音信号进行采样,计算每路输入语音信号平均电压,并与静噪阈值进行比较后,实时改写混音开关状态字实现混音输出动态静噪功能,并根据改写后的实际混音开关状态字进行数字混音计算后,通过并行总线控制的D/A转换器输出4路混音信号。

2 硬件设计
 模块硬件组成主要包括:电源、输入缓冲单元、微控制器、D/A转换及滤波单元、模块地址设置单元等。
2.1 电源转换单元
 电源转换单元电路原理图如图2所示。外部输入的12 V直流电源,通过AMS公司高性能、低功耗AMS1117线性稳压电源模块转换为+5 V直流电源,做为单片机A/D转换器和外加D/A转换器的参考电压,并增加输入输出高频滤波电路,使输出纹波电压进一步减小,电压输出幅度稳定,满足模块供电要求。

2.3 微控制器单元
 微控制器采用宏晶科技生产的单时钟/机器周期(1T)的单片机STC12C5A60S2,该单片机是高速、低功耗、超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051单片机,但速度提高8~12倍[1]。最高工作频率可达35 MHz,具有44个I/O口,每个I/O口驱动能力均可达20 mA,内部还集成有MAX810专用复位电路,512B EEPROM,1 280 B RAM,60 KB程序存储器,2路PWM,8路10位高速A/D(250 kS/s),主要针对电机控制等强干扰应用[3]。另外还具有ISP(在系统可编程)/IPA(在应用可编程)功能,无需专用编程器和仿真器,可通过串口(P3.0/P3.1)直接下载用户程序,方便软件下载和调试。
 本方案中,STC12C5A60S2单片机采用外部晶体振荡器,频率为24 MHz,通过单片机串口2接受混音状态设置,8路语音信号通过P1.0~P1.7口输入到单片机进行A/D转换;混音处理后的数字量通过并行总线送给TLC7226 D/A转换器,经D/A转换后输出4路混音信号。
2.4 D/A转换单元
 D/A转换单元采用TI公司生产的TLC7226CDW电压输出型D/A转换器,TLC7226采用CMOS工艺,内部设有控制逻辑单元、4个并行D/A转换器和输出缓冲器[2]。本方案中,单片机与TLC7226连接如图4所示。

 

 

3.2.1 动态静噪原理
 计算在极短时间内采样值的平均值与静噪门限进行比较,在门限值之下的信号认为是噪声,不参与混音计算,在门限值之上的信号则认为是语音信号,参与混音计算,这时虽然噪声和语音一起混音后输出,但由于声音的屏蔽效应,噪声可以忽略[3],从而实现混音动态静噪功能。
3.2.2 采样值处理
 语音信号电压采样频率为8 kHz,为了实现混音动态静噪功能,通过计算在极短时间内语音信号电压所有采样值的平均值来表征语音信号的强弱。由于采样时间极短,人耳感觉不到时间差异。如将采样时间t取为4 ms,采样点数N=0.004×8 000=32。

3.2.4软件时间开销估算
 A/D转换时间开销:STC12C5A60S2单片机内部A/D转换器模块使用内部RC振荡器时钟,5 V单片机内部RC振荡器时钟频率常温下为11~17 MHz,A/D转换器最快转换速度为90个时钟周期,所以每路A/D转换所需时间为:5.3~8.2 μs,8路A/D转换所需时间为:42.4~65.6 μs。
 其他时间开销:STC12C5A60S2单片机采用24 MHz外部石英晶体时,执行1条单周期指令所需时间为0.042 μs,采样值处理、动态静噪控制、数字混音计算及D/A输出控制总计约1 000条单周期指令,其他时间开销总计约:0.042 μs×1 000=42 μs。
 最大时间开销总计:65.6 μs+42 μs=107.6 μs<125 μs。
3.3 串口通信模块
 串口2设置为工作模式3,模块作为从机与控制主机进行通信,模块地址通过4位拨码开关进行设置,模块主要完成接收和保存4路混音状态设置字,程序流程图如图7所示。

4 实验结果与结论
 为了验证设计方案,设计制作了模块PCB板,并编制相关软件进行了调试和实验。通过电脑模拟控制主机与模块进行主从通信,发送4字节混音设置状态字,实验结果表明,按照预定协议能够进行可靠通信,可以正确地完成4路混音输入状态设置。
 在动态静噪控制时,在每路语音信号平均电压(RMS值)与静噪门限进行比较后,改变混音开关状态时需要一定的时间延迟。当语音信号在超过门限电平到混音开关闭合要有一定的延时Th。Th太长会造成语音的起始音素被切除,但Th太短,任何幅度超过静噪门限值的突发短暂干扰都会立刻打开混音开关并将这一干扰混音后输出,破坏静音效果,为了尽可能地吸收这类干扰又不至于造成起始音素丢失,Th可在0.5~4 ms之间选择。当语音信号在低于门限电平到混音开关断开也要有一定的延时Tb。由于语音信号动态范围大,讲话时又随着语气的变化而起伏停顿,因此Tb太短会造成语音的断续,影响语音混音质量。Tb太长,则语音停顿时噪声拖尾,同样影响混音质量。为了兼顾这两方面,Tb值可在0.5~2 s之间选取。
 通过调试和实验,4路混音输出每路均能够正确地按照预设状态字从8路语音输入中选择指定语音信号进行混音后输出,取得了满意的混音效果,而且每路混音输入在混音过程中均能实现动态静噪功能,验证了混音算法和动态静噪控制的正确性。
 本文根据某有线语音指挥调度系统研制需要,设计了一种基于STC12C5A60S2单片机的8×4数字语音混音矩阵方案,并制作实物进行了调试和验证。验证结果表明:方案设计合理可行,研制的模块实物体积小、成本低,具有硬件电路简单、抗干扰能力强、混音功能设置灵活、调试方便等优点,具有较高的性价比和实用价值。
参考文献
[1] STC12C5A60S2中文手册完全版.STC官方网站:WWW.STCMCU.COM.
[2] TEXAS INSTRUMENTS.TLC7226C Quadruple 8-bit Digital-TO-Analog Converters Data Sheet.SLAS060F-January 1995-Revised April,2007.
[3] 丁光亮,楚纪正,王琦.数字信号音频电平的算法研究[J].通信技术2010(7):150-153.
[4] 黄梅,宏玫,卢扬,等.数字混音模型的设计与实现[J].计算机工程与设计2010,31(16):3625-3626.

此内容为AET网站原创,未经授权禁止转载。