音频信号采集与AGC算法的DSP实现
时间:06-05
来源:
点击:
现就计算新的增益系数;另一方面在一定的时间周期内获取一个新的峰值,这个峰值就具有检测性能,又与原峰值比较,然后就计算新的增益系数。这个增益系数是相对稳定的。当音量加大时,信号峰值会自动增加,从而增益系数自动下降;当音量减小时,新的峰值会减小并且取代原来的峰值,从而使峰值下降,使增益系数上升。最后输出的数据乘以新增益系数后映射到音频信号输入的投影区间内。
图4是音频信号AGC算法的程序流程图。
AGC_Coff是初始增益系数,初始值为1;maxAGC_in是增益峰值,初始值为0;time是采样点计数,门限值为4096;AGC_in是新的音频数据,MAXArrIn是新的音频增益峰值;映射区间【-20000,20000】。
整个系统的软件部分为5人模块。系统主函数main( )、CMD文件、中断向量表、DSP5402头文件和专为C语言开发的库函数rtdx.lib。其中主函数部分是核心,主要包括:DSP器件初始化、MCBSP1初始化、MCBSP0初始化、AIC23初始化(内部12个可编程寄存器设置)及算法程序等。
在CCS2.0集成开发环境下,采用*.c语言和*.asm语言相结合的方式编写程序。将编写的程序*.c、*.asm和链接程序*.cmd文件编译链接后生成执行目标文件*.out,通过仿真器将执行目标文件*.out下载到系统板上,经过调试、编译并运行,以音乐作为音频信号源输入到系统板上。
结语
这套完整的音频信号采集和处理系统已经应用于实际的音频设备中。
- 基于低功耗高转换速率CMOS模拟缓冲器设计(07-15)
- 工业以及汽车应用中多种串行总线特性及比较(01-05)
- 应对串行背板接口设计挑战(02-28)
- 多位接口提升串行闪存的性能(10-08)
- 满足手机高速图像数据传输的差分串行接口方案(11-22)
- 你知道吗?USB端口的工作原理(07-04)