很多ADC的输入范围为0-VREF,这个VREF为了考虑精度一般都是设置为2.5或者4.096V,不是大家常用的5V,多以要想输入0-5V或输入±5V的电压就需要把输入电压缩放到0-VREF,比如把±10V电压缩放到0V-4.096V,
电路参考图如下图所示:
此处计算方式是把对称的正负电压-Vmax到+Vmax缩放到一个固定的0-VREF电压方式,设ADC的接收范围为0-VREF,
则:
当VIN=0时,VO=VREF/2,
当VIN=Vmax, VO=0V,
当VIN=-Vmax, VO=VREF,
则需要按照下面公式VIN变化,才能输出上面的线性变化
(公式1)
那么VO与VI的关系又如下所示:其中:VP=(VREF*R4)/(R3+R4)
(公式2)
整理上面公式及把VP带入得
(公式3)
对比公式1和公式3得:
(公式4)
(公式5)
设ADC的参考电压VREF=4.096,Vmax=10V,则:由公式5可得R2/R1=0.2048,则:
可以选取合适的R1和R2电阻,比如R2=10K,则R1=10/0.2048=48.8K,R1就近选取49.9K的电阻
然后再利用公式4计算R3和R4电阻,代入R1和R2后简化后得R3/R4=1.4,
如R3=4.99K,则R4就近取3.57K,
如R3=10K,则R4就近取7.15K,
综上:R1=49.9K,R2=10K,R3=4.99K,R4=3.57K
接下来可以再计算一个,比如输入得电压范围为±5V,参考电压VREF=4.096V
则由公式5可得R2/R1=0.4096,比如R2=20K,则R1=49.9K,
由公式4,代入R1和R2后简化后得R3/R4=1.8
如R3=4.99K,则R4就近取2.8K
如R3=10K,则R4就近取5.6K,
一个差分放大电路如下图所示,输入的两路电压V1和V2差分后放大
后面有时间再更新下输入范围为0-5V时对应的缩放方案