Ada Audits the Acquisition Numbers

Ada checks range fit, code step, and physical resolution behind the acquisition example

foundations
math-foundations
adc
sensor-pipeline
intermediate
Ada ADA · CALCULATION AUDIT

Ada Audits the Acquisition Numbers

The useful question is not how many bits the converter advertises. It is whether the physical signal uses the input range, whether the voltage step is small enough for the requirement, and whether the sensor physics can justify the extra codes.

A sensor produces 0 to 100 mV feeding a 0 to 3.3 V ADC, so the chapter proposes a gain near 33 to stretch that span across the converter’s full range rather than crowding into a handful of codes near zero. The same page notes that a 12-bit, 3.3 V ADC has a step of about 0.806 mV, and separately maps a 0 to 100 degrees C requirement across that same 0 to 3.3 V range. This audit asks the question those numbers invite: does a gain of 33 really use the ADC’s full span, and is the resulting code step small enough to matter against the sensor’s own accuracy?

Companion to the chapter Turning Signals Into Readings — every number here comes from that chapter.

1. Fit the small signal to the ADC

The chapter's example has a 0 to 100 mV sensor and a 0 to 3.3 V ADC. The full-scale gain is:

Gain = 3.3 V / 0.100 V = 33

Without gain, the sensor would use only 0.100 / 3.3 = 0.0303, or about 3.0%, of the converter span. On a 12-bit converter that is about 0.0303 x 4095 = 124 codes instead of the available 4096 levels.

2. Check the voltage step

For the same 12-bit, 3.3 V ADC:

Step = 3.3 V / 2^12 = 3.3 / 4096 = 0.000805664 V = 0.806 mV

That voltage step is a quantization grain. It does not remove analog noise, a drifting reference, poor placement, self-heating, or a missing anti-alias filter.

3. Compare code step with physical requirement

The page maps 0 to 100 degrees C across the converter range:

8-bit: 100 / 256 = 0.390625 degrees C/code
12-bit: 100 / 4096 = 0.024414 degrees C/code
16-bit: 100 / 65536 = 0.001526 degrees C/code

If the sensor is only reliable to about 0.5 degrees C, the 12-bit code step is already much smaller than the sensor limit. A 16-bit reading can record more digits, but the physics and calibration decide whether those digits mean anything.

Every number above is taken from this chapter's own worked example and re-derived step by step.