自动增益放大器资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
自动增益控制放大器
一、设计思路描述
本自动增益控制放大器系统以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 单通道单次转换