下面是我在学习STM32 中ADC测量电压,时候接触掉ADC的测量范围在0~3.3V 之间,不满足于实际使用,用于电路知识设计电压放大电路。(图片来自野火)
上面个的电路,可以等效出一个电路公式:(Vint - Vout)/R2 +(3V3 - Vout)/R1 = Vout / R3;
整理思路,我们要将 0V~3.3V,的电压范围扩大到 -10V ~10V,也就表示,当 IN 脚输入-10V ,OUT 脚上的电压应为 0V。同样道理 IN脚为 +3.3v ,OUT脚应该为 +10V。
这样我们就可以的到两个公式:
(-10 - 0)/R2 + (3.3 - 0)/R1 = 0 /R3;
(10 - 3.3)/R2 + (3.3 - 3.3)/R1 = 3.3 /R3;
我们电路设计需要的 R2 、R1 和 R3,可以假设R1为 10K,解上面公式一得:R3≈ 14.7K,公式二得:R2 ≈ 30.3 K;
将R1、R2、R3 的值带入(Vint - Vout)/R2 +(3V3 - Vout)/R1 = Vout / R3;
得到公式:Vout = (Vint + 10 ) / 6;通过这个公式可以计算ADC 采集到的实际电压值。