The ADC on the ADuC702x is specified for 12-Bit @ 1Msps.
If the default settings for the ADC are used, the resulting sampling
speed is only 774ksps.
Can the ADC be used at a faster sampling rate?
The ADC of the ADuC702x-family is specified for 12Bit performance @ 1Msps
over the full temperature-range (-40°C to 125°C) and supply-voltage-range (2.7V to 3.6V).
Yes the default settings for the ADC only end up in a sampling speed of 773.68ksps.
Taking in consideration that the ARM7-core running at 41MHz is just able to capture
the data from the ADC and store it to a SRAM-Buffer, this seems to be fast enough.
Of course, there are applictions which need samples from two or more different
input-channels captured as fast as possible once or for a specific number of samples
- i.e. in Motor-Control Current-Feedback or Position-Feedback-Loops.
For this type of requirements I have tried to run the ADC on even higher sampling speeds.
Depending on the output-impedance of the input-signals and other conditions I achieved
very good results.
To run the ADC on different speeds - faster - the ADC-Control-Register (ADCCON-MMR)
can be programmed for different sampling clocks and acquisition clock cycles.
The resulting ADC-Sampling-Speed can be calculated :
fADC/ADC-Divider / (19 + Acquisition-Cycles)
So the theoretical fastest ADC-Sampling can be fADC = Core-Clock/1 and
Core-Clock = 41.7792MHz and only 2 acquisition-cycles:
41.7792MHz / (19 + 2) = 1.989Msps
I achieved @ this sampling speed with a fast Buffer-OP-AMP on the
ADC-Input still very good performance.
But, as mentioned already, this is hard to capture with the ARM7-core.
It can only be done if a application-specific code is implemented as
ARM-Assembly-Code running from 32-Bit wide SRAM @ 41MHz
Still higher sampling speed than 774ksps, more than 1Msps, with good
performance can be achieved a bit easier with the following settings:
41.7792MHz / (19 + 16) = 1.193Msps
Code can still be implemented with "C" for typical applications and
delivers very good results.
This is not guranteed by data sheet specification !!!
Retrieving data ...