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

nRF9160 ADC Reference Values

Hello,

I'm trying to work with ADC on nRF9160DK and I'm using 3V for VDD IO;

With below configuration 

static const struct adc_channel_cfg m_1st_channel_cfg = {
	.gain = ADC_GAIN_1,
	.reference = ADC_REF_INTERNAL,
	.acquisition_time = ADC_ACQUISITION_TIME,
	.channel_id = 0,
#if defined(CONFIG_ADC_CONFIGURABLE_INPUTS)
	.input_positive = NRF_SAADC_INPUT_AIN0,
#endif
};

I'm getting full scale reading at 640mV

When I've switch to

static const struct adc_channel_cfg m_1st_channel_cfg = {
	.gain = ADC_GAIN_1,
	.reference = ADC_REF_VDD_1_4,
	.acquisition_time = ADC_ACQUISITION_TIME,
	.channel_id = 0,
#if defined(CONFIG_ADC_CONFIGURABLE_INPUTS)
	.input_positive = NRF_SAADC_INPUT_AIN0,
#endif
};

I'm getting full scale reading at 600mV, which I think it should 750mV due to 1/4th of VDD.

And another problem that I'm having is when I set gain to "ADC_GAIN_1_5" after 2.5V adc reading value start going down instead of going up. Like at 2.5V i'm reading 14600 and at 2.7V it is 9500.

Is there anything wrong with my configuration?

Regards,

Gurkan

Related