Enhanced Queued Analog-to-Digital Converter (eQADC)
MPC5510 Microcontroller Family Reference Manual, Rev. 1
31-80
Freescale Semiconductor
Preliminary
reconfiguring the eDMA to work with the modified result queue. The number of results that
must return can be estimated from the TC_CF
n
value obtained above.
2. Disable the eDMA from responding to the eDMA request generated by EQADC_FISRn[CFFF
n
]
and EQADC_FISRn[RFDF
n
] (see
Section 31.3.3.8, “eQADC FIFO and Interrupt Status Registers
”).
3. Write “0x0000” to the TC_CF
n
field.
4. Load the new configuration and conversion commands into RAM. Configure the eDMA to support
the new command/result queue, but do not configure it yet to respond to eDMA requests from
CFIFO
n
/RFIFO
n
.
5. If necessary, modify the EQADC_IDCRn registers (see
Section 31.3.3.7, “eQADC Interrupt and
eDMA Control Registers 0–5 (EQADC_IDCRn)
”) to suit the modified command queue.
6. Write 1 to EQADC_CFCRn[CFINV
n
] (see
Section 31.3.3.6, “eQADC CFIFO Control Registers
”) to invalidate the entries of CFIFO
n
.
7. Configure the eDMA to respond to eDMA requests generated by CFFF
n
and RFDF
n
.
8. Change MODE
n
to the modified CFIFO operation mode. Write 1 to SSE
n
to trigger CFIFO
n
if
MODE
n
is software trigger.
31.5.5
Command Queue and Result Queue Usage
is an example of command queue and result queue usage. It shows the command queue 0
commands requesting results that will be stored in result queue 0 and result queue 1, and command queue
1 commands requesting results that will be stored only in result queue 1. Some command messages request
data to be returned from the on-chip ADC, but some only configure them and do not request returning data.
When a command queue contains both write and read commands like command queue 0, the command
queue and result queue entries will not be aligned, in
, the result for the second command of
command queue 0 is the first entry of result queue 0. The figure also shows that command queue and result
queue entries can also become unaligned even if all commands in a command queue request data as
command queue 1. Command queue 1 entries became unaligned to result queue 1 entries because a result
requested by the forth command queue 0 command was sent to result queue 1. This happens because the
system can be configured so that several command queues can have results sent to a single result queue.