Close

External or Internal Voltage Reference, that is the question?

A project log for PIXI Analog Shield

An Arduino Shield using the Maxim MAX11300 for 20 Programmable Mixed-Signal I/O with 12-Bit ADC, 12-Bit DAC, Analog Switches, and GPIO

MagicWolfiMagicWolfi 02/28/2015 at 20:570 Comments

3 different configurations are tested to see if the internal reference voltage is good enough or if an external one is needed for best accuracy.

For the test a LM4040-2.5 0.1% tolerance was used.

ReferenceADC INT REFADC EXT REF DAC REF
Internal2.4999V0
2.4964V
External - 10 Ohm resistors2.5033V2.4991V2.4991V
External - no resistors2.5033V2.4991V2.4991V

Now I output a set of values through a DAC and read the voltage level back with an ADC and compare input and output values. The voltage range for ADC and DAC are set to 0v to +10V

Internal reference:

DACADCU [V]
0x00000x000-0.0070
0x04000x04012.4920
0x08000x08014.9919
0x0C000x0C007.4886
0x0FFF0x0FED9.9282

External reference, input and output with series 10 Ohm resistor:

Circuit for the external reference:

DACADCU [V]
0x00000x000-0.0041
0x04000x03FB2.4920
0x08000x07FE4.9983
0x0C000x0BFE7.4976
0x0FFF0x0FE69.9361

External reference, input and output shorted without series Ohm resistor:

DACADCU [V]
0x00000x000-0.0042
0x04000x03FD2.4970
0x08000x07FE4.9992
0x0C000x0C007.4990
0x0FFF0x0FE99.9381

The DAC does not seem to be capable of driving all the way up to the maximum value. More measurements are needed.

Returned ADC values seem to be best with the internal reference. The external reference without series resistors has the best voltage measurements, but adding cost to the BOM. Lower voltage measurements seem to be shifted 4-12mV (2-5 LSBs) to the negative side.

Discussions