Enhanced Queued Analog-to-Digital Converter (eQADC)
MPC5510 Microcontroller Family Reference Manual, Rev. 1
Freescale Semiconductor
31-81
Preliminary
Figure 31-49. eQADC Command and Result Queues
31.5.6
ADC Result Calibration
The ADC result calibration process consists of two steps: determining the gain and offset calibration
constants, and calibrating the raw results generated by the on-chip ADC by solving the following equation
discussed in
Section 31.4.5.4.1, “Calibration Overview
CAL_RES = GCC * R OCC + 2;
Eqn. 31-1
The calibration constants GCC and OCC can be calculated from
provided that two pairs of
expected (CAL_RES) and measured (RAW_RES) result values are available for two different input
voltages. Most likely calibration points to be used are 25% VREF
1
and 75% VREF since they are far apart
but not too close to the end points of the full input voltage range. This allows for calculations of more
representative calibration constants. The eQADC provides these voltages via channel numbers 43 and 44.
1.
VREF=V
RH
-V
RL
CQueue0 Write Command 0
No Results
0x0000
CQueue0 Read Command 1
Results to RQueue0
0x0004
CQueue0 Conversion Command 2
Results to RQueue0
0x0008
CQueue0 Conversion Command 3
Results to RQueue1
0x000C
CQueue0 Conversion Command n
Results to RQueue0
0x001C
Command Queue 1 (CQueue1)
CQueue1 Read Command 0
Results to RQueue1
0x0000
CQueue1 Read Command 1
Results to RQueue1
0x0004
CQueue1 Conversion Command 2
Results to RQueue1
0x0008
CQueue1 Conversion Command m
Results to RQueue1
0x001C
•
•
•
Command Queue 0 (CQueue0)
•
•
•
CQueue0 Read Command 1
Result
0x0000
CQueue0 Conversion Command 2
Result
0x0002
Result Queue 0 (RQueue0)
Result Queue 1 (RQueue1)
CQueue1 Read Command 0
Result
0x0000
CQueue1 Read Command 1
Result
0x0002
CQueue0 Conversion Command 3
Result
0x0004
CQueue1 Read Command 2
Result
0x0016
•
•
•
RQueue0 is not aligned with CQueue0
because the first command of
CQueue0 does not request results.
•
•
•
RQueue1 is not aligned with CQueue1
because it contains results for
CQueue0 and CQueue1 commands.
The timing at which the CQueue0
command result is stored in RQueue1
depends on the relative speed at
which commands from both CQueues
are executed. This is influenced by
factors like resource sharing, ADC
clock frequency, sampling time, and
triggering time.