我们的错误似乎是以渐进的方式出现的,直至达到满量产出。 我们向ADC输入提供了0至5伏的各种电压。

参考电压2.5V
AVDD 5V
简单的偏移校准不足够。
是否有人曾经遇到过这个问题,或者任何建议都将受到欢迎。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我们的错误似乎是以渐进的方式出现的,直至达到满量产出。 我们向ADC输入提供了0至5伏的各种电压。

参考电压2.5V
AVDD 5V
简单的偏移校准不足够。
是否有人曾经遇到过这个问题,或者任何建议都将受到欢迎。
您好,Shrihari,
欢迎参加E2E论坛! 您能否提供原理图和设备配置寄存器设置? 看来,也许这种投入实际上是浮动的。 此外,使用2.5V参考和5V输入源将显示为满刻度。 当ADC测量相对于参考电压的电压时,任何大于参考电压的输入都将显示为满刻度读数。
就您显示的数据而言,这意味着什么? 通常,我希望在代码中看到一个表示转换结果的值。 转换结果将是一个整数值,因此必须进行某种排序的计算。 我强烈建议只查看来自ADC的原始数据,而不是任何计算,以排除计算错误。
此致,
Bob B
您好,Shrihari,
感谢您的示意图。 看来您打算进行伪差分测量,这样2.5V输入的输出代码为0,而2.5V以上的输出代码为正代码结果,而2.5V以下的输出代码为负代码结果。
这应该可以正常工作,但是我无法确定结果与输入电压的相对位置。 您能否向我展示应用的输入电压和原始代码中的转换结果的数据表? 这些原始代码结果只能是整数,不能是分数部分。 换句话说,我不想看到任何计算只是输入电压和ADC代码结果。
此致,
Bob B
Bob,您好!
是的,正确。 我们的目标就是做到这一点。 我们的信号以2.5V为基础。
|
馈电`Ω |
计算值 |
ADC输出 |
值差异 |
|
5. |
838.8607万 |
838.8607万 |
0 |
|
4.9 |
805.3063万.68 |
808.4844万 |
-3.178万.32 |
|
4. |
503.3164万.8 |
505.8065万 |
-2.49万.2 |
|
2.5 |
0 |
1.7685万 |
-1.7685万 |
|
二 |
-167.7721万.6 |
-166.3825万 |
-1.3896万.6 |
|
1. |
-503.3164万.8 |
-502.5113万 |
-8051.8 |
|
0 |
-838.8608万 |
-838.8608万 |
0 |
此致
Shrihari V
您好,Shrihari,
计算中出现错误。 另请注意,从ADC返回的所有数据都是二进制2的补码24位值。 正满刻度应为0x7FFFFFFF,而负满刻度应为0x80万。 所以在5V输入情况下,数据中的某些内容会出现问题。 最终结果电压计算为2.5 + 2.5 代码(ADC/2^23)。
|
馈电`Ω |
ADC输出 |
ADC输出十六进制 |
计算的ADC电压值 | 计算的电压结果 |
|
5. |
838.8608万 |
80万 |
不适用 |
不适用 |
|
4.9 |
805.3063万.68 |
7AE147 |
2.40万 |
4.90万 |
|
4. |
503.3164万.8 |
4CCCCC |
1.50万 |
3.100万 |
|
2.5 |
0 |
0 |
0 |
2.5 |
|
二 |
-167.7721万.6 |
FFFFFFE6.6667万 |
-0.50万 |
2.0万 |
|
1. |
-503.3164万.8 |
FFFFB3.3334万 |
-1.50万 |
1.0万 |
|
0 |
-838.8608万 |
FFFF80万 |
-2.5 |
0 |
因此,根据您的数据表中给出的输入电压,结果似乎非常接近预期值。 也就是说,我可能是在错误地解释您试图告诉我的内容。 我可能误解了计算值的含义以及计算的方式。
此致,
Bob B
您好,Shrihari,
好的,所以您正在尝试将理论值与ADC输出代码匹配。 有几件事需要考虑。 第一个是ADC设备偏移,可以使用SFOCAL命令校准输出。
另一种是用于确定作为参考的输出代码的电压。 您的计算很可能是由2.5V的特定电压确定的,但通常该电压会稍有不同,例如2.495V或2.505V,这可能会改变输出代码结果。 因此,您需要使用高精度校准电压表(如Keysight 3458A)准确确定参考电压的精确输出电压。 手持式数字万用表不够精确。
然后,为了准确确定输出代码,您还需要精确测量输入电压,方法与测量参考电压相同。 精确的电压(如2.5V或1V)非常少见。
测量中也会有噪音。 所以我建议将几个连续的转换平均在一起。 同时考虑放射源的变化和噪音。
还有其他可能的误差,但很可能是与实际值相关的理论值有关。
此致,
Bob B
Bob,您好!
我们使用Keysight 3.35万B系列FG提供电压。 偏差不应超过1mV。
还使用Keysight 3.4461万A测量电压。
我们还看了一个窗口和一个数据流,这些数据流几乎是连续的,并且围绕相同的值而变化。 当我们发现偏差真的很高时,我们考虑了相同的平均值。
我们做的另一件事是使用参考电压本身并为ADC输入供电,我们仍然得到大约5000的输出计数。
此致
Shrihari V
您好,Shrihari,
E2E的一个不幸方面是,您非常熟悉您的测试和设置,而我不是。 我仍然没有收到您正在使用的注册表配置。 这一点之所以重要的一个示例是,您有两个输入配置,其中包含两个可能的输入和参考源。 所以当你说参考时,我不知道你要转换哪个参考和输入组合。 另外,我不知道您使用的精确参考电压是多少。
我遇到的第二个问题是,我不清楚测量的输入电压值以及它与输出代码的关系。 同样,您对您的设置非常熟悉,但我不是。 因此,您必须为我提供您测试的所有细节,以进一步帮助您。
当您提到您使用 参考电压反馈到ADC时,使用的是哪个参考,您使用的是什么输入,假差分测量是否使用相同的电压源? 这并不清楚,因为有两种可能的输入和参考路径。 首先发出SFOCAL以删除内部组件的任何ADC偏移。 如果您使用系统监视器,您可以使用内部短路检查偏移量,并验证您的代码,确保其接近零。 这将是您的基准测量。 下次测量时,在MUX寄存器中为AINP和AINN选择AIN1。 示意图中的AIN1与内部参考相连接。 打开内部参考,您将再次看到与基线测量值接近零的内容。 接下来,使用参考作为输入之一,重复输入电压测试。 你应该再次看到接近0的东西。 如果不这样做,则系统中存在导致此附加错误的问题。
此致,
Bob B