[time-nuts] uC ADC resolution (was: Poor man's oven)

Didier Juges shalimr9 at gmail.com
Wed Jun 7 14:37:13 EDT 2017

The good news is that for oven control, you can typically filter the heck
out of the data and the noise may actually help you with dithering if it's
fairly random, so you should be able to get close to the specs. The main
thing you need is stability, linearity should not be a factor. One
limitation will be the built in reference so unless you can switch to an
external reference, that may be the main issue.

I have been using the Silabs line of 8051 uCs and I found their ADCs
handily meeting their specs, at least on the devices I have tried (I have
used up to 12 bit ADC on their parts).

I also have used the MSC1210 (from originally Burr Brown, now TI). The only
board that came close to the 24 bit advertised performance of their ADC was
the demo board from Burr Brown themselves, and it was very slow. Anything
that I designed with it (with their help and advice) never got anywhere
near that and I gave up on that chip.

Didier KO4BB

On Jun 6, 2017 4:17 PM, "Attila Kinali" <attila at kinali.ch> wrote:

On Tue, 6 Jun 2017 16:37:27 -0400
Bob kb8tq <kb8tq at n1k.org> wrote:

> Often when you dig into the details of MCU ADC’s they have a little note
“optimized for audio” or
> “not recommended for control loops”. It can be a bit of a head scratcher
to work out what they are
> getting at. The big issues in this case seem to be DC leakage and 1/F
noise. Yes, they do sort of go hand in hand :)
> You need to be willing to check out the ENOB at DC in order to use them
effectively in a simple
> OCXO setup. That or be willing to flip the bridge ends on demand and try
to cancel out the issues.
> Unfortunately that adds both complexity and a string of other fun and

uC ADCs are only good for low resolution, slow signals. For anything else
you need an external ADC. Even if your uC datasheet claims that you have
a 12bit ADC, the reality is quite different. For one, these ADCs are not
well specified, the surounding digital logic has a profound effect that
changes dramatically depending on what other periphery you use or not.

You can always just subtract two bits of the ADCs resolution and you
wouldn't be wrong. Losing 3 bits to internal noise isn't unehard of
either. Heck, the STM32F4xx have so much internal noise that the ENOB
of their ADC is below 6bit... so low that they even had to write an
appnote on how to do averaging to get back to the 12 bits the ADC is
spec'ed for. (but don't mention that to an ST sales person, they will
hate your guts afterwards).

Rule of thumb: If you need your ADC DC stable, more than 8bit resolution,
or more than 10-1000 samples per second: use an external ADC.

                        Attila Kinali

You know, the very powerful and the very stupid have one thing in common.
They don't alters their views to fit the facts, they alter the facts to
fit the views, which can be uncomfortable if you happen to be one of the
facts that needs altering.  -- The Doctor
time-nuts mailing list -- time-nuts at febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/
and follow the instructions there.

More information about the time-nuts mailing list