3.4.2 Noise Suppression Using Burst Average or Average Mode

Most analog signals are affected by noise. Noise is an undesirable electrical signal which interferes with an original or desired signal. Every sample from an ADC can be a combination of signal and noise. Noise suppression is a process of reducing noise with minimal impact on the desired signal. One way to achieve this is by computing the average of many samples of a noisy signal, reducing the noise magnitude on the signal without impacting the original signal. A potential solution could be to filter the acquired samples in software. However, this would require additional CPU resources. A better option would be to use the computation modes supported by the ADCC.

The ADCC Computation modes, such as Average or Burst Average mode, can be used for averaging by configuring the ADC to accumulate several samples automatically. The ADC conversions accumulate in ADACC, and the average value of the accumulated samples (i.e., the filtered result) is available in the built-in ADFLTR. Because the sampled noise has a zero mean, the averaged result will be close to the actual signal values. In Figure 3-9, the purple line illustrates the sensor output signal with fluctuations due to noise. The red line shows the accumulation of 32 ADC samples in a short time window to get the average or filtered output.

Figure 3-9. Sensor Output Signal with Fluctuations and Averaged Sensor Output

Each sample differs from zero by a random value but with an equal probability of being either positive or negative. The accumulated noise sample values will approach zero, and the noise will be successfully suppressed. If this noise is imposed on a non-zero signal, the accumulated value approaches a scaled version of this signal's average. As oversampling is done with multiple samples, the average result of all the sampled values will be approximately equal to the original DC signal, meaning zero mean noise. Increasing the burst size (accumulating more samples) helps to flatten out more peak signals and results in more noise suppression.

The Average mode can be used with low-varying signals such as temperature, humidity, and TDS sensors to remove fluctuations and noise from the signal.

The burst average can be used best for a quick, short-term averaging operation. For extended periods, Averaging mode is a better choice.