抖动的ADC采样值

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
4个帖子/ 0新
最后一篇
贺拉斯谢长廷
离线
最后一次露面:2年8个月前
加入:2016-05-05 16:34
抖动的ADC采样值

你好,

在我们设计中,使用4.2V锂电池。
由于14580仅支持ADC的1.2V或3.6V Vref,
我们为两个参考电压设计了多个外部分压器,以弄清楚可接受的解决方案(较少漏电流+稳定采样值),

请查看测试的附件,
和采样代码看起来像:
ADC_INIT(GP_ADC_SE,GP_ADC_SIGN,ATTN);// ATTN == 0,如果ATTN1X&ATTN == GP_ADC_ATTN3X,则为ATTN3X
ADC_USDELAY(20);
ADC_ENABLE_CHANNEL(频道);// Channel == ADC_CHANNEL_P01 / P02以及GPIO已在PID_ADC中配置了PERIPH_INIT。
adc_sample = adc_get_sample ();
ADC_USDELAY(1);
ADC_INIT(GP_ADC_SE,0,ATTN);
ADC_ENABLE_CHANNEL(频道);
adc_sample2 = adc_get_sample();

在论坛中进行了许多关于ADC采样的帖子,
对于无限阻抗(w/ attn1x),你推荐的采样模式是移除内部衰减(ATTN3x)。

但是,通过我们的测试结果,ATTN1X的采样结果比ATTN3X的结果稳定。
例如:
一个。
使用2.7M + 1M + ATTN1X的外部分频器的配置,电压4.2的采样值在934至953(ADC_SAMPLE1)范围内。
偏差将达到82mV =((953-934)* 1200/1024)*(2700 + 1000)/ 1000,这对于估计电池放电应该是不可接受的。

配置外部分频680k+2.7M+attn3x设置,4.2v的采样值从689扩展到699 (adc_sample1)
偏差等于((699-689)* 3600/1024)*(2700 + 680)/ 2700 = 44mV,其小于上述溶液。

因此,我们的问题是
1)attn3x的解决方案是什么缺点?从测试结果看起来似乎无法从Inifinite阻抗中获得稳定的采样值,为什么?
2)如果内部阻抗在attn3x模式下仅为300k欧姆,
使用与一对较大的电阻(例如3M)使用的设置比一对较小的值(XXX k)少于漏泄漏(大约20ua +)是合理的吗?
正如有人告诉我的,外部分压电阻不会超过内部阻抗的1/10。

设备:
MT_dialog
离线
最后一次露面:2个月2周前
职员
加入:2015-06-08 11:34
嗨霍勒斯,

嗨霍勒斯,

1)通常在使用电压分频器时,通过使用衰减器和外部分压器,它意味着从分隔器引入的错误,这意味着将出现在分配器上的误差。应该不会导致更大的错误,而是对一个完全未定义的电压划分,因为您还涉及内部分压器的内部电阻,其自由于外部分频器的电阻(这就是其推荐不使用衰减器以及外部的原因分配器由于较大的阻抗,使您没有阻力限制)。因此,您在上面执行的衰减器部分的计算是错误的,因为在这些计算中,您只考虑形成分频器的外部电阻而不是来自内部衰减器的电阻,这就是为什么不使用外部分频器的衰减器,显然,衰减器配置的错误比正常配置更大。

2)关于使用更小或更大的电阻器,通常使用较大的电阻将在测量中引入更大的误差,但会限制泄漏,更小的电阻器将提供更准确的测量,但会增加漏电流。关于抵抗并且应该是内部阻抗的1/10,它有一些原因,因为例如,如果例如内部阻抗为300k,并且您使用的并联(3000k)使用大电阻器,这意味着将影响几乎电阻器分频器(您将在分频器中最终超过272k的电阻值),因此不同的分割因子,但如果您使用的是内部阻抗的值1/10,请说30k意味着总阻力将靠近27K(非常接近您放置的电阻值)。

由于MT_dialog

贺拉斯谢长廷
离线
最后一次露面:2年8个月前
加入:2016-05-05 16:34
嗨MT,

嗨MT,

好的,感谢您的详细解释,我从中学到了很多东西。
现在我剩下的问题是如何在低泄漏的情况下减小adc采样的偏差范围,
为什么这对(750K:249K)的采样值与较大的那对(2700K:1000K)的采样值有相似的偏差?

我的代码中是否有任何错误,或者有任何建议来最小化软件方面的偏差?

贺拉斯谢长廷
离线
最后一次露面:2年8个月前
加入:2016-05-05 16:34
你好,

你好,

通过更换E96电阻并缩短连接到电阻的调试线路,解决了浮动ADC采样值的问题。
请按已解决的关闭,谢谢!