因为STM32中ADC的范围是3.3V,所以需要把电源电压经比例分压后作为采样电压来输入。测的的值再经计算就可以得出原始值
比如 分压比是1:A,测的值是X(ADC输出是一个整数),则满足公式
X=(2^N-1)*Us/(A*Uref)
即
Us=A*Uref*X/(2^N-1)
其中A是比例数,N是ADC位宽,Uref是范围电压,一般是3.3V,X是ADC输出的N位宽整数值。有时为了方便计算,可以用2^N 替代(2^N-1),对结果影响很小。