adc LSB的精度

时间:2017-04-24 04:14:46

标签: precision adc

我正在使用24位ADC并尝试计算可读的最小电压。 ADC标记为24b位,因此只有23个有效位。 ADC满量程读数为5v,因此我按如下方式计算LSB:

  

双LSBval24 = 5.0 /(pow(2,23)-1);

现在有趣的部分。与Windows 10 64bit上的计算器相比,运行Debian 32位操作系统的Raspberry pi计算结果略有不同。

通过以下代码获得Pi输出

  

char LSB [150];

     

snprintf(LSB,150," LSB =%。38f",LSBval24);

这意味着LSBval24计算本身可能导致差异,或者 snprintf 转换可能导致问题或Win 10计算器错误。

显示38位小数...

Pi  = 0.00000059604651880818829633949113011582
Win = 0.00000059604651880818829634050087219487

所以我想我的问题是,考虑到ADC的23位精度限制 (1)哪个答案更正确?
(2)精度的多少位(不是位)是该ADC的精度极限。

2 个答案:

答案 0 :(得分:0)

经过更多研究后,我发现问题2的答案是基于ln(2)/ ln(10)* 23位的6.9位数。

答案 1 :(得分:0)

您正在讨论以19位(十进制)开头的差异。 如果精心调整,大多数参考电压的容差范围为+ -0.1%。这样参考容差将在0.59nV左右可见。

看nV:一个1K电阻在室温下的噪声为4nV / SQRT(Hz)。在某个nV以下发生的事情还是是噪声(除非您可以在运行期间将设计冷却到接近0K)

23位只是意味着如果信号超过大约0.59uV,您可以检测到信号的变化。但这并不意味着完全正确。这受参考电压的限制,而不是受ADC的限制。