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的数据转换有疑问。
我将全部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