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.

[参考译文] ADS130B04-Q1:数据转换问题

Guru**** 1772095 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1406724/ads130b04-q1-data-conversion-issue

器件型号:ADS130B04-Q1

工具与软件:

大家好!

我对 ADS130B04的数据转换有疑问。

我将全部4个通道用作单端通道、负输入接地。

通信和设置正常运行、另外电压值似乎正确、但在通道1和3上、符号被交换。

我在所有通道上都具有大约0.6V 的输入电压、但通道1和3的输入电压为-0.6V。

在数据表中、数据表示为二进制补码、因此我的转换为:

int16_t data = (int16_t)(((uint16_t)msb << 8) | lsb);

float volts = ((float)data * 1.2f) / 32768.0f;

MSB 和 LSB 是由 NULL 命令从每个数据通道读取的第一个和第二个字节。

而1.2 / 32768来自减小的标度范围。

我在这里做错了什么? 有什么建议吗?  

提前感谢、

Peter  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Peter、

    根据我的了解、输入是如何连接的、可以看到 AIN0N、AIN1N、AIN2N 和 AIN3N 与 GND (GND=DGND=AGND)相连。  然后、您要尝试连接相对于 AIN1P 和 AIN3P 输入端 GND 的负电压。

    对于大于2的增益、ADS131B04的输入限制(相对于 GND)不小于-0.3V、对于增益1和2、该输入限制为-0.1V。  任何低于此值的负电压都是无效输入。

    为了强制出现负差分输入电压、例如在通道1上、请将 AIN1P 连接到 GND、将 AIN1N 连接到+0.6V。  这些将是 ADC 的有效输入电压、ADC 会将其解释为-0.6V 的负差分输入电压。

    V-IN = V-AINxP - V-AINxN = 0V - 0.6V =-0.6V。

    此致、
    Keith Nicholas
    精密 ADC 应用

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Peter、

    可能需要仔细检查原理图。 封装上的正负输入顺序因通道而异。 很容易将其混用。

    此致、
    Joachim Wuerker

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Keith:

    不、我不想测量负电压、我从寄存器中读出负电压、但下面来自 Joachim 的回复解决了这个问题。

    谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Joachim、您好!  

    实际上、这就是问题所在、我们的 PCB 设计人员将输入混淆了。

    现在我们已连接、例如带有0.6V 电压的 AIN3N 和 带有 GND 的 AIN3P。 绝对值保持不变、只是交换符号是否可以、还是这是电气问题?

    再次感谢、

    Peter  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Hallo Peter,

    很高兴我们很快就弄清了这个问题。

    根本就没有问题。 你只需要交换转换结果的符号,你就可以了。

    schönes Wochenende,
    Joachim Wuerker