Offset Binary Coding (for bipolar output ranges)
This method takes into account the fact that the lowest output voltage is not zero but a negative value. The output voltage is given by:
Output Voltage = (Output Code / 2048) x
Example: | Output code = 1024, |
| Output voltage = (1024 / 2048) x 5 - 5 = (0.5 x 5) - 5 = |
Note the difference between this output voltage to the output voltage using straight binary coding shown above using the same output code.
Conversely, the output code for a desired output voltage is given by:
Output Code = (Desired Output Voltage /
Example: | Desired output voltage = 0.485V, |
| Output Code = (0.485 / 2.5) x 2048 + 2048 = 0.194 x 2048 + 2048 = 2445 |
| (rounded down) |
The relationship between D/A resolution and
1 LSB = 1/2048 x Full-Scale Voltage
Example:
The reason that 1 LSB for a bipolar range is twice the magnitude of 1 LSB for a unipolar range with the same
Output Code | Explanation | Output Voltage for ±5V Range |
0 | Negative full scale | |
1 | Negative full scale + 1 LSB | |
2047 | ||
2048 | 0V | 0V |
2049 | +1 LSB | +.0024V (+2.44mV) |
4095 | Positive full scale - 1 LSB | +4.9976V |
⇒Note: Again, an output code of 4096 would be required to generate the
Copyright 2001 Diamond Systems Corp. |