自动增益放大器剖析

自动增益放大器剖析
自动增益放大器剖析

自动增益控制放大器

一、设计思路描述

本自动增益控制放大器系统以MSP430G2553为控制核心。利用单片机内部ADC10对末级输出信号采样,可由按键控制三种模式以及增益倍数的切换,也可根据采样得到的末级输出信号幅度大小,自动控制DAC7811作为TLC085反馈电阻网络,从而实现对末级自动增益控制。在软件设计中,我们实现三种不同的模式切换:

1.交流手动模式中。根据选择增益倍数不同,我们可以算出不同的code值,将code值传给DAC7811。例如:当我选择0.2倍增益时,那么需要控制前级衰减,同时code值为2048,因此增益倍数Av=0.1*4096/2048=0.2。

2.直流自动换挡模式。根据单片机内部ADC10对输出信号采样幅度大小,自动控制前级是否衰减、控制CD4051选择OPA 2227反馈电阻,从而实现0.2、0.5、

2、5的最大增益倍数。

3.自动增益模式。根据利用单片机内部ADC10对输出信号采样幅度大小自动控制前级是否衰减,控制CD4051选择OPA 2227反馈电阻。

二、硬件电路设计

2.1前级信号衰减电路

VDD

图2.1 前级衰减电路

如图2.1所示,前级衰减电路由CD4051、OPA2227、20K?以及2K?电阻组成,其中CD4051为单刀八掷开关。在该电路中,单片机MSP430G2553通过P1.3口进行对CD4051中两种电阻进行选择,改变OPA2227反馈电阻,从而实现0.1倍与1倍的控制。

在整个电路中,前级衰减电路十分重要,它不仅仅是对输入信号进行衰减,还可以对单片机MSP430G2553进行保护。

2.2末级DAC7811增益自动控制电路

图2.2 DAC7811增益自动控制电路

图2.2为末级DAC7811增益自动控制电路。利用单片机内部ADC10对输出信号经过OPA2340绝对值整形后的波形进行采样,根据幅值控制CD4051选择

OPA2227反馈电阻,进而控制衰减10倍或1倍。

该电路由TLC085与DAC7811组成,其中TLC085为四路运算放大器,在这次设计中,我们只使用两路,一路作电压跟随器使用,起缓冲作用;另一路放大器是与DAC7811形成反馈电路,实现增益调节。

在DAC7811的数据手册中,我们可以根据公式:

单片机MSP430G2553通过控制P2.0 P2.1 P2.2三个端口,给DAC7811发送数据。由上公式可知,当Av=5时,我们只需要控制单片机MSP430G2553给DAC7811发送相对应的code 值。

在该电路中,DAC7811特别小,因此将其焊在洞洞板上是非常困难的,建议使用脚距为0.5mm 的转接板,也不要随意掰其引脚,谨防引脚断裂!!!!

2.3键盘显示模块

在键盘中,我们采用三个键设计,其关系如下图2.3所示,它们分别为模式选择键、增益选择键和确定键。模式选择键可以在交流自动、直流换挡自动和自动增益三种模式切换;

增益选择可以选择0.2、0.5、2、5四种增益;最后的确定键的作用为总开关,

只有当确定键按下之后,单片机才会运行相应的模式。

图2.3 键盘设计电路

显示部分比较麻烦,为了节省I/O 端口,开始我们用74HC164和1602显示,这样只需要4个I/O 端口。但是在实际中这种方案是不可行的,因此我们最后选择用12864作为显示,需要2个I/O 端口,实际运行通过。

三、软件程序设计

3.1

ADC10采样模块

code

V V in out 4096?

-=code

Av 4096

-

=

在程序中,每隔1607个时钟周期对输入的交流进行一次AD采样,因为1607是一个质数,所以基本可以保证采样在不同的正弦相位,通过10000次取点计算出峰峰值。其流程图如图3.1所示。

3.11ADC10主要特性:

1)有内部基准1.5v或2.5v,还可以外接基准电压。

2)采样对象:可直接向内部温度传感器、芯片供电电

压、外部基准电压采样

3)AD采样起始信号触发方式,软件触发和Timer_A控

制触发

4)采样的方式:单通道单次,单通道多次,多通道轮

流,多通道重复。

5)可单独关闭ADC和基准电压

6)采样数据可自动存储在指定的存储空间ADC10MEM

寄存器中

3.12ADC10初始化设置:

主要是基准电压与通道选择的配置

1)内部基准电压

ADC10内部集成有带隙电压基准,可以产生1.5V或2.5V两种基准电压。

使用内部基准电压具体配置如下:

ADC10CTL0|=REFON;(配置内部基准电压1.5v)

ADC10CTL0|=REFON+REF2_5V;(配置内部基准电压2.5v)

REFON:内部基准电压发生器控制

0 关闭内部基准电压发生器

1 开启内部基准电压发生器

REF2_5V:内部基准电压选择1.5V/2.5V

0 选择1.5V内部参考电压

1 选择2.5V内部参考电压

2)外部基准电压

使用外部基准电压具体配置如下:

ADC10CTL0|=SREF_x;

SREFx:基准源选择

0 Vr+=AVcc, Vr-=AVss

1 Vr+=Vref+, Vr-=AVss

2,3 Vr+=Veref+, Vr-=AVss

4 Vr+=AVcc, Vr-=Vref-/Veref-

5 Vr+=AVcc, Vr-=Vref-/Veref-

6,7 Vr+=AVcc, Vr-=Vref-/Veref-

3)通道选择

ADC10CTL1|= CONSEQ_x;

COMSEQx:转换模式

0 单通道单次转换

1 序列通道单次转换

2 单通道多次转换

3 序列通道多次转换

3.2DAC7811模块

在该模块的软件设计中,我们控制单片机MSP430G2553的3个I/O端口,通过单片机给DAC芯片写入code值,控制增益倍数。DAC总共16位,12位为数据位,为4096,因此DAC最大值为4096。

3.3CD4051模块

在该模块的软件设计中,我们控制单片机MSP430G2553的1个I/O端口,控制CD4051选择OPA2227反馈电阻,进而控制衰减10倍或1倍。

3.4 主程序

附件1为主程序流程图。在该流程图中,我们通过三个按键的切换,选择不同的模式和增益倍数,进而选择不同的子程序。其关系如下表所示:

3.5交流换挡模式

附件2为交流换挡程序流程图。在交流换挡子程序中,主要根据按键选择增益倍数不同,控制前级CD4051是否衰减,以及DAC中计算出相应的code值,这些值都是固定的,如下表3.5。当ADC10采样之后,我们需要计算出输入电压的值,并将其显示在12864上。

相关主题
相关文档
最新文档