Is a 10-bit ADC Sufficient for Microcontrollers?

1. Introduction

Currently, most microcontrollers come with built-in AD converters that are typically between 10 to 12 bits. In general applications, how much does the bit depth of AD conversion affect measurement errors? Is a 12-bit ADC sufficient?

We will discuss the impact of AD conversion bit depth on measurement error through practical measurements.

Is a 10-bit ADC Sufficient for Microcontrollers?

2. Circuit Design

Design a test circuit using the F030 microcontroller for testing. The input analog signal is sent to the ADC’s channel 0 after passing through an RC filter. Two resistors are used to separate the analog ground and power supply. A 3.3V voltage regulator chip is also set up on the circuit board. The PCB is designed to be compatible with a one-minute board-making method.

AD\Test\2024\April\TestADCBit.PcbDoc

Is a 10-bit ADC Sufficient for Microcontrollers?

<span>▲ Test Circuit Schematic 720</span>

Is a 10-bit ADC Sufficient for Microcontrollers?

<span>▲ Test Circuit PCB</span>

After one minute, the test circuit board is manufactured perfectly.

Is a 10-bit ADC Sufficient for Microcontrollers?

3. Measurement Results

Next, we will solder the circuit board, clean it, and proceed with measurements.

First, use a probe clip to download the test program. The test program is downloaded, and the measurement data is uploaded to the computer through the serial port in the ST-LINK. Using Python programming, we utilize the DH1766 to supply voltages from 0.1 to 3.2V, and the actual voltage values are measured using the DM3068. The microcontroller averages the 512 collected data points. Before averaging, we take the first 1 to 12 bits separately, allowing us to obtain ADC sampling values at different resolutions.

Is a 10-bit ADC Sufficient for Microcontrollers?

Is a 10-bit ADC Sufficient for Microcontrollers?

Within the measured voltage range, a total of 2000 data points were collected, and the relationship between voltage and ADC was plotted. It can be seen that when the ADC sampling bit depth is relatively low, the errors caused by quantization are more significant. Although this is the average of 512 data points, the errors primarily stem from the quantization of the ADC. However, as the bit depth increases, fluctuations caused by noise also become evident in the data. At this point, the errors caused by noise exceed those brought about by the conversion bit depth.

Is a 10-bit ADC Sufficient for Microcontrollers?

Is a 10-bit ADC Sufficient for Microcontrollers?

<span>▲ Collected Data at Different Bit Depths</span>

By performing linear fitting between the microcontroller’s AD data and the voltage, we calculate the variance of the error between the fitted voltage and the actual voltage. It can be observed that as the AD conversion bit depth varies from 1 to 12, the variance decreases sharply. However, the rate of decrease slows down significantly, and when the bit depth exceeds 10 bits, the error remains relatively constant. This is the data line plotted after taking the logarithm of the variance. It becomes clearer that once the AD conversion bit depth exceeds 10, the errors in the obtained data primarily stem from circuit noise. Therefore, for data conversion, higher ADC bit depths become ineffective.

Is a 10-bit ADC Sufficient for Microcontrollers?

<span>▲ Linear Fitting Errors Corresponding to Different ADC Bit Depths</span>

Bits Var
1 0.2016750843417479
2 0.05153571814548405
3 0.01352796032514819
4 0.003468020713918683
5 0.0008517649509084311
6 0.00020580205442651296
7 5.001551736517359e-05
8 1.3009367147500475e-05
9 5.263557870607768e-06
10 4.309030498367149e-06
11 4.297694583457816e-06
12 4.314972044296696e-06

Is a 10-bit ADC Sufficient for Microcontrollers?

<span>▲ Bit Depth vs. Logarithm of Error</span>

4. Conclusion

This article provides practical measurements on the impact of ADC conversion bit depth on measurement data accuracy. When the AD conversion bit depth is less than 10 bits, the data error decreases exponentially with increasing bit depth. However, once the bit depth exceeds 10 bits, under normal single-sided board conditions, the errors caused by circuit noise become predominant. In fact, higher ADC conversion bit depths no longer contribute to reducing measurement errors.
That concludes today’s sharing. If you have any original articles related to electronic design or other technical topics, we welcome submissions. Selected articles will be published, and authors will receive a reward!
Is a 10-bit ADC Sufficient for Microcontrollers?
Warm Reminder:

Due to recent changes in WeChat public platform push rules, many readers have reported not seeing updated articles in a timely manner. According to the latest rules, it is recommended to frequently click on “recommended reading, sharing, and favoriting” to become a regular reader.

Recommended Reading:

  • 500 Billion Tech Giant Bankrupt: Technology Once Surpassed Samsung and Huawei

  • Communication Giant Exposes Layoffs: R&D Department is the “Hardest Hit Area”!

  • Tesla’s China Region Layoff Rate Reaches 50%, Compensation Plan Exposed

Is a 10-bit ADC Sufficient for Microcontrollers?

Please click 【View】 to give the editor a thumbs up

Is a 10-bit ADC Sufficient for Microcontrollers?

Leave a Comment