The ADC Numbers
The ADC Numbers
Ada audits the ADC numbers — resolution, code range, quantization error, and noise
ADA · CALCULATION AUDIT
Foundations · optional mathematics and physics
The ADC Numbers
The chapter’s 12-bit ESP32-style ADC on a 3.3 V reference steps every 0.806 mV across 4096 levels, so a 2.0 V sensor reading digitizes to code 2482. A tidy bit count invites the assumption that more bits always means a better measurement. This audit re-derives the code count, LSB, and quantization limit, then asks whether bit depth alone earns its resolution once reference voltage, noise, and source impedance are counted.
Companion to the chapter ADC Fundamentals — every number here comes from that chapter.
Resolution, code range, quantization error, and noise, ~4 minutes
ADC resolution is voltage bookkeeping: the mathematics tells you the code step, and the physics tells you whether sensor noise, source range, and timing make that step meaningful.
See the relationship before changing it
The figure reads from left to right. The blue card is adc resolution. The middle card applies this page's rule. The green card is ideal code width. Walk the arrows once: set the input, apply the rule, then read the result with its unit.
The retained audit below checks several chapter fixtures. This model keeps those stated values fixed and changes only adc resolution, so the numeric fixture does not switch without explanation.
Derive the baseline in four named moves
- 1
Name the input. The chapter baseline is 12 bits.
- 2
Name the relationship. code width = 3,300 mV / 2^bits
- 3
Substitute with units. 3,300 / 2^12 = 0.806 mV
- 4
Read the result. Keep the unit beside the value. Use it only inside the technical boundary on this page.
Predict, then change adc resolution
Try Predict the direction of code width = 3,300 mV / 2^bits. Test another adc resolution, then compare ideal code width.
Observe Each added bit halves ideal code width, but it does not remove reference error or noise. Reset adc resolution to 12 and compare ideal code width.
Explain Each added bit halves ideal code width, but it does not remove reference error or noise.
Check yourself
What should you do before trusting a moved-control result?
What does this small model leave out?
Treat the 12-bit ADC, 3.3 V reference, and 2.0 V signal as fixed audit inputs; press Calculate, then use Check.
The result shows 4096 levels, a 0.806 mV ideal step, and code 2482 for the 2.0 V sample.
Bit depth divides the reference span into ideal codes; usable resolution remains bounded by reference error, analogue noise, source settling, and sensor accuracy.
Technical boundaries
For the ADC scale, excluded from this fixed arithmetic are reference tolerance, sensor accuracy, ADC non-linearity, aliasing, temperature drift, or time-varying analogue noise.
The working
1. Bit depth sets the number of possible codes. A 12-bit converter has 212 = 4096 levels, normally labelled code 0 through code 4095. That is why the same table can talk about 4096 levels and a maximum reported code of 4095.
2. Reference voltage turns codes into real voltage. The chapter's 3.3 V, 12-bit example has:
For a 2.0 V sensor reading, the digital code is:
| Design check | Arithmetic shown | Audit result |
| 10-bit Arduino-style ADC at 5 V | 5 V / 1024 = 0.0048828 V | 4.88 mV per count; half-step about 2.44 mV |
| 12-bit ESP32-style ADC at 3.3 V | 3.3 V / 4096 = 0.0008057 V | 0.806 mV per count; half-step about 0.403 mV |
| 16-bit precision ADC at 3.3 V | 3.3 V / 65536 = 0.0000504 V | 0.050 mV per count; useful only if noise is below that scale |
| Bipolar +/-10 V input span | 20 V / 65536 = 0.000305 V | 305 microvolts per count |
| +/-1 V span with +/-4 noisy counts | 2 V / 4096 = 0.488 mV; 4 × 0.488 mV = 1.95 mV | The noise floor is larger than a single count, so extra nominal bits do not automatically improve the measurement. |
| Averaging 64 independent samples | sqrt(64) = 8 | Random noise can shrink by 8x, but bias, nonlinearity, source impedance, and correlated noise remain. |
What the audit buys you: ADC bit depth is not a quality guarantee by itself. The usable measurement is the smaller story that survives reference voltage, quantization, analog noise, source impedance, and the physical sensor's own accuracy.
Every number above is taken from the chapter's own ADC resolution example and re-derived step by step.