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

Charles Steinmetz csteinmetz at yandex.com
Wed Jun 7 15:25:38 EDT 2017

Chris wrote:

> Assume me goal is to regulate temperer of an aluminum block to within
> 0.1C, how good must my ADC be?   Is an effective 6-bits good enough?
>      *   *   *If I scale the input to the ADC such that it os 1.0C from 0 to 63
> counts then each cunt is 1/64 C which is about 6 times better then my
> allowed error of 0.6 C.

The required number of bits depends on the range it represents -- it is 
all about scale, as your second paragraph above seems to recognize.

You are right, 6 bits is enough to represent a 1C span to the nearest 
1/64C.  But that is not the whole answer.  This representation will be 
mapped to 64 steps of oven output.  If the oven has very little power, 
these can be reasonably fine steps -- but recovery from large errors 
will be painfully slow.  On the other hand, if the oven has normal-ish 
power, the steps will be much too large to control the oven temperature 

You need both sufficient range and sufficient resolution to accomplish 
the task at hand.  In reality, 6 bits will be *both* too coarse for fine 
control and will also have insufficient range.  Experience has shown 
that 12 bits (actual, not nominal) is barely to not really enough to do 
the job with real crystal ovens if you want fine temperature control 
over a useful range of temperatures.

Consider digital audio. 6 bits is plenty to digitize audio to the 
nearest 30uV (typical LSB value for CD-quality audio) -- BUT, only over 
a 1.9mV range.  Actual CD-quality audio requires one to maintain this 
same resolution over a range of 2V, which requires 16 bits.

Best regards,


More information about the time-nuts mailing list