每个STM32芯片都有一个内部的参照电压,相当于一个规范电压丈量点,在芯片内部连接到ADC1的通道17。
依据数据手册中的数据,这个参照电压的典型值是1.20V,最小值是1.16V,最大值是1.24V。这个电压根本不随外部供电电压的改变而改变。
不少人把这个参照电压与ADC的参阅电压混杂。ADC的参阅电压都是经过Vref+供给的。100脚以上的类型,Vref+引到了片外,引脚名称为Vref+;64脚和小于64脚的类型,Vref+在芯片内部与VCC信号线相连,没有引到片外,这样AD的参阅电压便是VCC上的电压。
在ADC的外部参阅电压动摇,或由于Vref+在芯片内部与VCC相连而VCC改变的情况下,假如关于ADC丈量的精确性要求不高时,能够运用这个内部参照电压得到ADC丈量的电压值。
具体办法是在丈量某个通道的电压值之前,先读出参照电压的ADC丈量数值,记为ADrefint;再读出要丈量通道的ADC转化数值,记为ADchx;则要丈量的电压为:
Vchx = Vrefint * (ADchx/ADrefint)
其间Vrefint为参照电压=1.20V。
上述办法在运用内置温度传感器对由于温度改变,对体系参数进行补偿时就非常有用。