Dear Sir
I am trying to work with the ADC .
Attached a code
I get the lines
00> Adc sample 13772
00> Adc sample 13772
00> Adc sample 13772
00> Adc sample 13772
00> Adc sample 13772
00> Adc sample 13772
00> Adc sample 13772
00> Adc sample 13772
The a2d input is wired to NTC , Voltage on NTC is 1.62V , VDD-GPIO = 3.3V
Please Advise
#define ADC_DEVICE_NAME DT_ADC_0_NAME #define ADC_RESOLUTION 10 #define ADC_GAIN ADC_GAIN_1_6 #define ADC_REFERENCE ADC_REF_INTERNAL #define ADC_ACQUISITION_TIME ADC_ACQ_TIME(ADC_ACQ_TIME_MICROSECONDS, 10) #define ADC_1ST_CHANNEL_ID 0 #define ADC_1ST_CHANNEL_INPUT NRF_SAADC_INPUT_AIN0 #define ADC_2ND_CHANNEL_ID 2 #define ADC_2ND_CHANNEL_INPUT NRF_SAADC_INPUT_AIN2 const struct adc_channel_cfg m_1st_channel_cfg = { .gain = ADC_GAIN, .reference = ADC_REFERENCE, .acquisition_time = ADC_ACQUISITION_TIME, .channel_id = ADC_1ST_CHANNEL_ID, #if defined(CONFIG_ADC_CONFIGURABLE_INPUTS) .input_positive = ADC_1ST_CHANNEL_INPUT, #endif }; #define BUFFER_SIZE 1 static u16_t m_sample_buffer[BUFFER_SIZE]; int adc_init(void) { int err = true; adc_dev = device_get_binding("ADC_0"); // if (!adc_dev) if (adc_dev == NULL) { printk("efi device_get_binding ADC_0 failed\n"); err = false; } else { err = adc_channel_setup(adc_dev, &m_1st_channel_cfg); if (err) { printk("Error in adc setup: %d\n", err); err = false; } else { printk("adc setup is OK \n" ); err = true; } } return err; } int adc_sample(void) { int ret; const struct adc_sequence sequence = { .channels = BIT(ADC_1ST_CHANNEL_ID), .buffer = m_sample_buffer, .buffer_size = sizeof(m_sample_buffer), .resolution = ADC_RESOLUTION, }; if (!adc_dev) { return -1; } ret = adc_read(adc_dev, &sequence); // printk("ADC read err: %d\n", ret); adc_result = &m_sample_buffer[0]; return ret; }