DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 405|回复: 0
打印 上一主题 下一主题

音频控制芯片PGA2311的音频增益自动控制

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-22 00:28:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
引言
    音频接收设备已经是日常生活、学习、工作中不可缺少的工具,但是在使用过程中由于某些原因,如切换频道、播放广告等,信号输出时会出现音量大小不一的情况,严重影响用户的收听效果。产生这种音量相差较大的主要原因是音频信号输入的幅度不一致,解决办法就是进行增益控制。
    最早的增益控制是模拟电路检测控制,但模拟电路设计相对繁琐,且难以实现较宽范围的增益控制,因此随着数字信号处理器件(DSP)的发展,采用DSP进行增益控制成为主流。起初数字器件处理的一般方法是大的信号减小增益,小的信号不处理。现在也有对小信号进行放大的方法,但由于担心在没有信号输入的情况下增益调整太大,会使背景噪声也加大,因此增益调整范围不大,不能达到理想的控制效果。另外,基本都是对输入信号进行检测,即前馈控制,对输出信号不进行检测,这样在输人时若增益较大,输出会被限幅,影响收听效果。且DSP方案成本相对较高。本方案采用成本低的单片机为处理核心,通过简单的增益控制算法完成增益自动控制。

1 系统硬件设计
    如图1所示,整个系统以音频信号的采集处理为核心进行设计。音频控制芯片PGA2311两边的音频信号输入和输出端,经放大器TL084电平搬移后送到MSP430F149的A/D口进行采样(对信号输入/输出端都进行检测目的是解决在输入端无信号情况下增益是否调整的问题,同时避免增益过大导致输出端限幅发生)。采样数据由软件算法处理得到增益值,经电平变换器74HC245配置到PGA2311。按键和数码管完成输出电平门限范围的设置和显示。




1.1 主控电路
    主控芯片MSP430F149是一款16位、48个8位并行I/O口、具有精简指令集、超低功耗(节电模式下最低只有0.1μA)的单片机,其寻址空间共64 KB其中RAM为2KB,给系统开发带来很大的方便。它内置一个12位A/D转换器ADC12、采样保持器和模拟多路器。ADC12具有高速、通用的特点,能够对8个外部模拟源和4个内部参考电源(包括内部温度传感器源)进行A/D转换。ADC12还提供多种采样触发方式、转换时钟周期、转换模式的选择。
    PGA2311是一款双声道、可编程增益放大器,与MSP430F149之间通过SPI总线交互,其增益范围为+31.5~-95.5 dB。
    图1中MSP430F149是3.3 V供电,而PGA231l是±5 V供电的CMOS器件,因此在I/O逻辑电平匹配时需要注意,在驱动PGA2311时用电平移位器74HC245达到电平匹配。
                          
                       
                          
                               
1.2 电平搬移电路
    由于一般音频输出设备音量大小不一且为交流耦合形式,而MSP430F149的A/D采样电压范围是0~2.5 V,为了使被采样信号与A/D匹配避免削波失真,需要将输入信号比例放大(或缩小),并将中心电压搬移至1.25 V附近。如图2所示。





2 软件设计
    软件设计包括按键显示、外设控制、音频信号处理几个部分,重点是音频信号处理的AGC算法。按键显示响应用户设置输出音量大小并显示出来,外设控制主要是对PGA2311进行配置。
2.1 AGC算法
    AGC算法核心是通过信号的包络信息来判断信号的动态范围是否超过设置大小,这里需要快速跟踪包络的变化,及时进行增益控制。
    以往的AGC算法中乘除法运算对CPU资源的占用较大。这里提出的AGC算法比较简单实用,其流程如图3所示。具体实现过程:从单片机的A/D口,获得音频输入/输出信号的电平存入数组。数组存储数据达到门限比较要求,进入峰值比较流程。根据存储的输入信号数据,采用冒泡排序的算法找出最大幅值,判断输入端是否有信号。如果判定没有音频信号输入,则增益不调整,防止由于输出信号太小而一直增大增益,噪声过大,或者一旦出现声音,由于增益过大而出现短时间输出声音太大。输入端有信号,则对输出端进行检测,同样调用冒泡排序程序找出最大幅值,如发现输出信号大小超过设定门限,则减小增益,反之则增大增益。在减小增益时,步进要大些,而在增大增益时步进要小些,这样在增益调整时输出的音量使用户听觉上不觉得难受。

3 实验论证
    为验证设计的正确性进行实验论证。设定输出电平范围,由计算机输入突变的音频信号,通过示波器观察输出,如图4所示。




    从图4中方框所标示的音量突变区域,可以看出输入音量突然增大后,在500 ms内就将增益调低,保持音量输出在设定范围输出。高音突变低音等实验由于调整周期较长,这里就不作图示整个调整过程了。

结语
    实验结果说明,该设计增益控制及时、准确,保持输出信号电平在设定范围稳定输出,且低功耗,实现简单,可移植性强,可以满足目前用户对音频接收设备音量输出的要求。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-16 10:24 , 耗时 0.090288 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表