LTC2051是凌力尔特公司的一款双路零漂移的集成运算放大器。这款运放到底还有什么更好的特性,读者有兴趣可以自己去感受。这里,我只提到一点:它是一款Rail-to-Rail单电源运算放大器。也就是说,它的输出电压范围是满摆幅的即[0-3]V。它采用背靠背NPN和PNP输入晶体管和双折式共射共基放大电路使输入可达到每一个电源端点的几个毫伏之内。虽说轨至轨,但它不能在Uin=0时使Uout=0。所以,我们就不能像用双电源运放一样幻想着不采取一定措施的情况下输入为0的情况下输出也为0。为了控制精度,我们一般会在信号的正负输入端加各加VCC/2直流偏置电路如图2,这样的输出Uout= VCC/2+Aod*Uin。但是如果是从单端加入直流偏置,这样的偏置与信号一起被放大输出,Uout= Aod(VCC/2+Uin),如图3。
在单电源运放的应用中,直流偏置电压电路通常有三种:电阻分压法、运放电压跟随器法和射级电压跟随器法,如图4。读者可自行进行分析和选用。
图 2
图 3
图 4
从图1中我们也可以看出它是采用了最常用的电阻分压法,为运放提供单端直流偏置电压。这种电路不仅简单,而且成本低。但是,这种电源的输出阻抗大,输出电流的变化对偏置电压的精度影响很大。从电路图中可以看出它所提供的偏置电压并不是VCC/2,而是对单片机内部ADC参考电压VREF进行分压。另外,偏置电压的输出也不时VREF/2。因为是单端提供直流偏置电压,是要经过放大后输出的,而VREF/2太大了。经过下面的计算就可以知道这个值到底是多少。
计算之前,有必要交待一下此时P1.6端口的状态。对于C8051F330单片机所有的通用端口都是全双向口。所以,这里P1.6作为输入端口时,端口寄存器中的值不会影响D点电压,只作为输入。另外2N7002导通的典型门级电压为2.15V,所以在电路工作在正常状态时2N7002不会导通。不导通, Q1的高电平控制信号就是有效的,Q1就会正常导通工作。做了这些铺垫后,我们来看一下A点的电压怎么来计算。
如图5,这应该是一个正向输入的运放加法电路。从电路计算依据上我们可以在A点应用基尔霍夫电流定理。 所以有:
(Uin-UA)/R2+(VREF-UA)R1=UA/R3
为了方便起见,我们用R3代表R3+R4。 结果应该是:
UA=R1//R2//R3(Uin/R2+VRER/R1)。
下面我们给它换个形式,即:
UA=Uin/(R2/R3+R2/R1+1)+VREF/(R1/R2+1+R2/R3) 由于R2/R3<<1,R2/R1<<1所以Uin/(R2/R3+R2/R1+1)≈Uin。 式子△U=VREF/(R1/R2+1+R2/R3)中的各个参数都是已知的,最后计算出△U=16.2mv。 也即此电路图在输入信号的基础上叠加了一个16.2mv的直流偏置电压。这样即使Uin=0时,由于直流偏置的存在,输出电压不会是等于电源地,而是(1+RF/R)△U。从而提高了信号在0点附近的精度。
图 5
为了证明这一点,本人用MultiSim EWB 10做了电路仿真结果完全正确。如图6,正输入端的信号用50mv的电源代替,直流偏置电压用2.4v的电源代替。LTC2051的电源用3V的单电源供电。其中,示波器的channelA测的是U+,即信号与直流偏置分压后的叠加信号。ChannelB通道测的是运放的输出电压。
图 6
从图7中我们可以看到叠加后的信号刚好是20mv+16.1mv≈36.016。运放的放大倍数Au=1+R3/R2=24.5。测得的运放输出Uo=36.016*24.5≈880.354mv。依此来说明了以上分析是正确的。
图 7 |