This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF52832 SAADC 14-bit with 0 oversampling

I'm using the nRF52832, and taking ADC measurements, with 14 bit resolution and with Oversampling disabled. The nRF52832 Product Specification mentions the saadc can be configured with "8/10/12-bit resolution, 14-bit resolution with oversampling";

My measurements are coming back in a 14-bit format. Is oversampling occurring even though my sdk_config.h has the line "#define SAADC_CONFIG_OVERSAMPLE 0"? Does the nRF52832 actually have a 14-bit adc?

If oversampling is occuring, what's the nature of it? I have acquisition time set to 10uS. How many additional samples are taken, and how much time are they taking?

When i'm calculating quantization noise, should i assume 14-bits or 12-bits?

Thank you!

Parents
  • I have the answer to my own question.

    14-bit format is just that -  a format. If oversampling is Disabled in sdk_config.h, there is no oversampling performed. Selecting SAADC_CONFIG_RESOLUTION 3 gives you a 14-bit format, but it's 12-bit ADC data multiplied by 4.

    I used the PCA10040 to take the following data. For brevity i've only shown the first 20 samples. Results are in counts.

    20 samples gathered using PCA10040

    The following are some calculations on 100 samples (of which the first 20 samples are included above). Results are in ADC counts.

    calculations on 100 samples

  • I understand Sean.  Thank you for the information.  I had some recent success with achieving actual 11 bit resolution using a 12 bit resolution, using VDD/4 as the reference and disabling the DC/DC on the nrf52832.  I require an ADC value every 100 ms so I performed my own oversampling and average, taking 50 readings during the 100 ms timeframe.  I did not disable the soft devices during sampling and this method may yield more accurate results to eliminate systematic noise.

Reply
  • I understand Sean.  Thank you for the information.  I had some recent success with achieving actual 11 bit resolution using a 12 bit resolution, using VDD/4 as the reference and disabling the DC/DC on the nrf52832.  I require an ADC value every 100 ms so I performed my own oversampling and average, taking 50 readings during the 100 ms timeframe.  I did not disable the soft devices during sampling and this method may yield more accurate results to eliminate systematic noise.

Children
Related