微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 2640ADC参考电压4.3V如何产生的?

2640ADC参考电压4.3V如何产生的?

时间:10-02 整理:3721RD 点击:

如题,请问下

2640的4.3V参考电压是如何产生的呢?外部只有3.3V的供电,那么是内部进行了升压处理吗。TRM上说"seem to be 4.3V"感觉这个4.3V不是确定的一样。我测试了一组数据,分别选4.3V和VDDA做参考电压,测量内部的GND,1.2V,3.3V得到如下采样值:

-----------------------------------------------------------------

                            GND               1.2V                 3.3V

-----------------------------------------------------------------

4.3V参考:           4                   1564               3980

------------------------------------------------------------------

VDDA参考:        3                    1201              3060

------------------------------------------------------------------

然后我计算外部IO的电压值时:ADC_LEVEL = SampleValue*3.3/4096;或者ADC_LEVEL = SampleValue*4.3/4096;

两种情形下,都比实际测量的电压低0.07V左右,请问我应该怎么处理?

请有过成功运用的朋友指点一二,谢谢了。

Hi Jianhua, 

里面是有比例变化的。“seem”的意思不是不确定。是用户使用上是“看上去”.

关于offset, 可以看一下 DriverLib code 里面可否调整。你可以研究一下,或需要楼下软件看看有没有能帮上忙的。

Hi Jianhua, 

please check it out. you can find the solution for your 2nd question. 

https://e2e.ti.com/support/wireless_connectivity/f/538/p/435746/1561758

不错,可以直接测量锂电池电压!

这个内部ADC可以直接测量单节锂电池的电压吗?

ADC的输入阻抗是多少?

锂电池最高4.2(或更高)了吧。不行,超过芯片本身耐压了。这个不可以超过VDDS。(参见datasheet)

那采样锂电池还是需要外部分压后来采样了,对吗?

是的,一般锂电压检测是要分压了。

原来的CC254x芯片ADC的输入阻抗是180K左右,外部的分压电阻还不能太大,负责无法测量到准确的值。

不知道现在的这个新芯片是否有这个问题?对于这种环境下的ADC输入阻抗大概多少?

各位参考下面代码,根据需要自己设置,拿走不谢:

/*!
 *  @brief  Specifies whether the internal reference of the ADC is sourced from the battery voltage or a fixed internal source.
 *
 *  - In practice, using the internal fixed voltage reference sets the upper range of the ADC to a fixed value. That value is 4.3V with
 *  input scaling enabled and ~1.4785V with input scaling disabled. In this mode, the output is a function of the input voltage multiplied
 *  by the resolution in alternatives (not bits) divided by the upper voltage range of the ADC. Output = Input (V) * 2^12 / (ADC range (V))
 *
 *  - Using VDDS as a reference scales the upper range of the ADC with the battery voltage. As the battery depletes and its voltage drops, so does
 *  the range of the ADC. This is helpful when measuring signals that are generated relative to the battery voltage. In this mode, the output is
 *  a function of the input voltage multiplied by the resolution in alternatives (not bits) divided by VDDS multiplied by a scaling factor derived
 *  from the input scaling. Output = Input (V) * 2^12 / (VDDS (V) * Scaling factor), where the scaling factor is ~1.4785/4.3 for input scaling
 *  disabled and 1 for input scaling enabled.
 *
 *  @note   The actual reference values are slightly different for each device and are higher than the values specified above. This gain is saved in
 *          the FCFG. The function ::ADC_convertRawToMicroVolts() must be used to derive actual voltage values. Do not attempt to compare raw values
 *          between devices or derive a voltage from them yourself. The results of doing so will only be approximately correct.
 *
 *  @warning    Even though the upper voltage range of the ADC is 4.3 volts in fixed mode with input scaling enabled, the input should never exceed
 *              VDDS as per the data sheet.
 */
typedef enum ADCCC26XX_Reference_Source {
    ADCCC26XX_FIXED_REFERENCE       = AUXADC_REF_FIXED,
    ADCCC26XX_VDDS_REFERENCE        = AUXADC_REF_VDDS_REL
} ADCCC26XX_Reference_Source;

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top