我有一个用于测量差分信号的 ADC (AD7767)。来自 ADC 的数据是 2 的补码 MSB 前 24 位值。我想将此值转换为电压。使用的参考电压为 5 伏。我正在使用 Arduino IDE。我到目前为止基本上是这样的:
const long minValue = 0x800000;
const long maxValue = 0x7FFFFF;
signed long result = 0;
....
long voltage = (result * 0x5) / maxValue;
Serial.println(voltage);
这将打印值 0。
值是什么:
result = 1010101101010101
0x5:又名Vref
(result * 0x5) = 110101100010101001
(result * 0x5) / maxValue = 0