STM32内部ADC基准电压计算方法

STM32的48脚的单片机因为没有Vref+,Vref-,所以我们使用一些高精度参考电压芯片来提高ADC的精度很不方便。这里还有一种方法可以参考下:

STM32内部有一个专门用于校准的稳压器VREFINT,,它由外部的VSSA供电,他的电压一般为1.2V左右。 ADC17通道用于检测这个基准电压,在每颗芯片出厂时 ,ST公司会给芯片的VSSA和VDDA加上一个高精度的3v3电压, 然后读出此时的ADC17通道的值存放在芯片内部;我们可以利用这个值精确的算出外部VSSA的电压,然后进一步算出外部ADC的精确电压。

注意要获得精确的电压还要注意ADC的取样时间要足够长,并且需要启动校准

我们可以看到,通过读取ADC IN17可以获得内部参考电压值,假设我们现在要读取电池电量,需要读取两个通道的值:

1、ADC IN17内部参考电压原始数据,也就是下图公式中的 VREFINT_DATA

2、读取电池电量连接通道原始数据,也就是下图公式中的ADC_DATAX值

内部基准电压Vchx = Vrefint * (ADchx/ADrefint)

其中:

Vrefint为参照电压=1.20V。

ADchx:17通道采集到的ADC数值

ADrefint:4096

  • 3
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: STM32F030系列微控制器中的ADC模块使用内部基准电压作为参考电压来进行模数转换。其内部基准电压分为两个不同的值: 1. ADC1和ADC2通道的内部参考电压为1.2伏特。 当我们想使用ADC1或ADC2通道时,可以选择将内部参考电压设置为1.2伏特。这个内部参考电压可以提供较高的精度,适用于需要更精确模数转换的应用。 2. ADC3和ADC4通道的内部参考电压为2.56伏特。 当我们想使用ADC3或ADC4通道时,可以选择将内部参考电压设置为2.56伏特。这个内部参考电压可以提供更大的范围,适用于需要更大电压测量范围的应用。 在使用这些内部基准电压之前,我们需要通过设置寄存器来选择要使用的内部参考电压值。然后,在进行模数转换之前,ADC模块会使用所选的内部参考电压对输入信号进行校准和转换。 需要注意的是,使用内部基准电压进行ADC转换时,我们应该了解和考虑其精度和范围的限制。对于一些特殊应用或需要更高精度的情况,我们还可以选择使用外部参考电压来代替内部基准电压。 ### 回答2: STM32F030系列微控制器中的ADC(模数转换器)具有内部基准电压供参考和校准使用。 该系列MCU中的ADC可以选择多个基准电压源来进行参考电压。其中一个选择是内部基准电压源,其电压值为1.2V。这个内部基准电压源可以用作单端或差分模式下的参考电压。 使用内部基准电压源时,可以通过设置ADC控制寄存器(ADC_CR)的VBATEN位来启用它。此时,所选择的参考电压将会是内部基准电压源。 当ADC使用内部基准电压源时,需要在进行ADC转换之前先对其进行校准。校准步骤包括测量内部基准电压源的实际电压,并将此测量值与理论值进行比较。然后,通过调整ADC的校准参数来修正测量误差,以便确保精确的ADC转换。 可以通过设置ADC_CR寄存器的ADCAL位来启动自动校准。在自动校准完成之前,ADCRDY标志位将会保持为低电平。一旦校准完成,ADCRDY标志位将会置位,表示ADC已经准备好进行转换。 总之,在STM32F030系列微控制器中,内部基准电压源可以作为ADC的参考电压供电,并且需要在使用之前对其进行校准。这样可以确保ADC的精确度和准确性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值