
Enhanced Queued Analog-to-Digital Converter (EQADC)
MPC5644A Microcontroller Reference Manual, Rev. 6
1156
Freescale Semiconductor
c) Write 0b11 to ESSIE field to enable the EQADC SSI to start serial transmissions.
7. Configure the DMAC to transfer data from CQueue0 to CFIFO0 in the EQADC.
8. Configure
Section 25.5.2.8, EQADC Interrupt and DMA Control Registers (EQADC_IDCR)
.
a) Set CFFS0 to configure the EQADC to generate a DMA request to load commands from
CQueue 0 to the CFIFO0.
b) Set CFFE0 to enable the EQADC to generate a DMA request to transfer commands from
CQueue0 to CFIFO0; Command transfers from the RAM to the CFIFO0 will start immediately.
c) Set EOQIE0 to enable the EQADC to generate an interrupt after transferring all of the
commands of CQueue0 through CFIFO0.
9. Configure
Section 25.5.2.7, EQADC CFIFO Control Registers (EQADC_CFCR)
.
a) Write 0b0001 to the MODE0 field in EQADC_CFCR0 to program CFIFO0 for software
single-scan mode.
b) Write “1” to SSE0 to assert SSS0 and trigger CFIFO0.
10. Since CFIFO0 is in single-scan software mode and it is also the highest priority CFIFO, the
EQADC starts to transfer configuration commands to the on-chip ADCs and to the external device.
11. When all of the configuration commands have been transferred, CF0 in
FIFO and Interrupt Status Registers (EQADC_FISR)
, will be set. The EQADC generates a End of
Queue interrupt. The initialization procedure is complete.
Figure 25-95. Example of a CQueue Configuring the On-Chip ADCs/External Device
The initialization procedure described above does not generate ADC clocks that are in phase because the
timing at which the ADC0/1_EN bits, in the
Section 25.5.3.1, ADC0/1 Control Registers (ADC0_CR and
, are set is different. Below follows an example on how to simultaneously set these bits so that
in-phase ADC clocks are generated. In this example, ADC0/1_CLK are configured to the same frequency.
1. Push an ADC0_CR write configuration command in CFIFO0 that enables ADC0 (ADC0_EN=1)
and that sets the ADC0_CLK_PS to an appropriate value. For example, 0x80800801.
2. Push an ADC1_CR write configuration command in CFIFO1 that enables ADC1 (ADC1_EN=1)
and that sets the ADC1_CLK_PS to an appropriate value. For example, 0x82800801.
3. Configure CFIFO0 and CFIFO1 to single scan software trigger mode and simultaneously trigger
them by writing 0x04100410 to the EQADC_CFCR0 register - see
CFIFO Control Registers (EQADC_CFCR)
.
Configuration Command to CBuffer0 - Ex: Write ADC0_CR
CQueue in
0x0
0x1
0x2
0x3
system memory
Configuration Command to CBuffer2 - Ex: Write to external device configuration register
Configuration Command to CBuffer0 - Ex: Write ADC_TSCR
Configuration Command to CBuffer1 - Ex: Write ADC1_CR
Command
Address
Summary of Contents for MPC5644A
Page 2: ...MPC5644A Microcontroller Reference Manual Rev 6 2 Freescale Semiconductor...
Page 24: ...MPC5644A Microcontroller Reference Manual Rev 6 24 Freescale Semiconductor...
Page 26: ...MPC5644A Microcontroller Reference Manual Rev 6 26 Freescale Semiconductor...
Page 52: ...Introduction MPC5644A Microcontroller Reference Manual Rev 6 52 Freescale Semiconductor...
Page 56: ...Memory Map MPC5644A Microcontroller Reference Manual Rev 6 56 Freescale Semiconductor...
Page 1228: ...Decimation Filter MPC5644A Microcontroller Reference Manual Rev 6 1228 Freescale Semiconductor...
Page 1440: ...FlexCAN Module MPC5644A Microcontroller Reference Manual Rev 6 1440 Freescale Semiconductor...