Using the UC3C-ADC the non-ASF-way...

Go To Last Post
3 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hello,

regarding the datasheet and the framework the ADC of the UC3C was intended to be used with the sequencer. Either one big one with 16 captures in sequence or with 2x8 simultaniously.

Because I have to do a lot of specially timed captures with very differnet frequencies I ask myself if it would be possible to just configure the 16-slot single-sequencer with all my desired inputs and then determine the input which sould be captured right before calling the soft-soc-function.

Is this possible? Do i need the to use the sequencer at all?

Greetings,
jabba

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I cannot see a way to not use the sequencer. Does not matter if you use the ASF or not.

The amount of time required to manipulate/rearrange which inputs are to be sampled would be a large fraction of the actual total conversion time.

As I read the datasheet, there is no explicit mention as to the order in which the inputs are sampled, but looking at the chronograms it seems that inputs are sampled in increasing order of INP/INN number.
ie. inp0/inn0, then inp1/inn1, ....
So..., if you have the freedom of arranging your inputs you could connect them in decreasing sampling-rate order to the inputs,
ie. connect the input that needs the highest sampling rate to the lowest INP/INN input.
Configure the sequencer with all of your inputs and then fiddle with CNVNB (.convnb) to control how many conversions are done per sequence.
eg.
set CNVNB to 1, start a conversion, get 1 result.
set CNVNB to 2, start a conversion, get 2 results.
...

Alternatively, would subsampling work ?
ie. sample everything at the highest rate you need but use the results only at the rate you need.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I find the UC3C ADC amazingly versatile compared to previous models but it still is limited to 1.5MSPS sampling rate and it seems the SOC is syncronized to this sampling clock, giving a sampling point uncertainty of ±333ns when firing that SOC regardless of source.

If you could describe the nature of the signals you need to sample, and how you need to sample them we could probably find a solution.

Just off the bat, sampling 3 signals where one needs 2x sampling rate of the other two, you'd configure the sequencer to sample signal A, then B then A then C then start over.
If the maximum sampling rate needed is only a small fraction of 1.5MHz there are other ways too but requires ... imaginative use of other modules and tying it all together using the Peripheral event controller.