18.4.2 D/A Conversion Formulas for Bipolar Output Ranges

In Bipolar output ranges, the D/A voltage will range from (– full scale voltage) to (+ full scale voltage - 1LSB). Thus the full scale range is 2x the full scale voltage.

12-bit D/A:

D/A code = (Output voltage / Full scale voltage) 2048 + 2048

Output voltage = ((D/A code – 2048) / 2048)

Full scale voltage 1 LSB = Full scale voltage / 2048, or 1 LSB = Full scale output range / 4096

16-bit D/A:

D/A code = (Output voltage / Full scale voltage) 32768 + 32768

Output voltage = ((D/A code – 32768) / 32768)

Full scale voltage 1 LSB = Full scale voltage / 32768, or 1 LSB = Full scale output range / 65536

Example for 12-bit D/A:

Output range is bipolar 10V (full scale voltage = 10V, full scale range = 20V); desired output voltage = 2.000V.

D/A code = 2V / 10V * 2048 + 2048 = 2457.6 => 2458

1 LSB = 10V / 2048 = 4.88mV

The D/A code should be rounded to the nearest integer for best accuracy. The following table illustrates the relationship between D/A code and output voltage for a bipolar output range (VREF = Reference voltage).

Last updated