ATmega32(L)
ADC Conversion Result
After the conversion is complete (ADIF is high), the conversion result can be found in
the ADC Result Registers (ADCL, ADCH).
For single ended conversion, the result is
V
⋅ 1024
IN
ADC = --------------------------
V
REF
where VIN is the voltage on the selected input pin and VREF the selected voltage refer-
ence (see Table 83 on page 214 and Table 84 on page 215). 0x000 represents analog
ground, and 0x3FF represents the selected reference voltage minus one LSB.
If differential channels are used, the result is
(V
– V
) ⋅ GAIN ⋅ 512
POS
NEG
ADC = ------------------------------------------------------------------------
V
REF
where VPOS is the voltage on the positive input pin, VNEG the voltage on the negative
input pin, GAIN the selected gain factor, and VREF the selected voltage reference. The
result is presented in two’s complement form, from 0x200 (-512d) through 0x1FF
(+511d). Note that if the user wants to perform a quick polarity check of the results, it is
sufficient to read the MSB of the result (ADC9 in ADCH). If this bit is one, the result is
negative, and if this bit is zero, the result is positive. Figure 111 shows the decoding of
the differential input range.
Table 82 shows the resulting output codes if the differential input channel pair (ADCn -
ADCm) is selected with a gain of GAIN and a reference voltage of VREF
.
Figure 111. Differential Measurement Range
Output Code
0x1FF
0x000
0
Differential Input
Voltage (Volts)
- VREF/GAIN
V
REF/GAIN
0x3FF
0x200
213
2503J–AVR–10/06