Hello.
I have a issue about saadc input range.
First, using 52832, SDK 15.3.0 S332 Softdevice.
I using ble ant both and 2 rtc time and gpiote also used.
my goal is measureing coin cell voltage.
coin cell is CR2032.
I success getting data. however max voltage is under 3.2V.
I use usb power.
under below is my Configure Setting.
static void Config_value_init() { memset(&saadc_config, 0 , sizeof(saadc_config)); saadc_config.resolution = (nrf_saadc_resolution_t)NRFX_SAADC_CONFIG_RESOLUTION; // 10bit saadc_config.oversample = (nrf_saadc_oversample_t)NRFX_SAADC_CONFIG_OVERSAMPLE; // disable saadc_config.interrupt_priority = NRFX_SAADC_CONFIG_IRQ_PRIORITY; saadc_config.low_power_mode = NRFX_SAADC_CONFIG_LP_MODE; memset(&channel_config, 0 , sizeof(channel_config)); channel_config.resistor_p = NRF_SAADC_RESISTOR_DISABLED; channel_config.resistor_n = NRF_SAADC_RESISTOR_DISABLED; channel_config.gain = NRF_SAADC_GAIN1_6; channel_config.reference = NRF_SAADC_REFERENCE_INTERNAL; channel_config.acq_time = NRF_SAADC_ACQTIME_40US; channel_config.mode = NRF_SAADC_MODE_SINGLE_ENDED; channel_config.burst = NRF_SAADC_BURST_DISABLED; channel_config.pin_p = (nrf_saadc_input_t)(NRF_SAADC_INPUT_AIN5); channel_config.pin_n = NRF_SAADC_INPUT_DISABLED; }
under below is handler func.
static void user_battery_saadc_handler(nrf_drv_saadc_evt_t const * p_event) { nrf_saadc_value_t *value = p_event->data.done.p_buffer; // nrf_saadc_value_t = uint16_t switch(p_event->type) { case NRF_DRV_SAADC_EVT_CALIBRATEDONE : NRF_LOG_INFO("SAADC Calibration Done"); CaliState = false; break; case NRF_DRV_SAADC_EVT_DONE : Calculate_Voltage(value, &voltage); NRF_LOG_INFO("DATA = %d BUFFER SIZE = %d Voltage : %f"NRF_LOG_FLOAT_MARKER, *value, p_event->data.done.size, NRF_LOG_FLOAT(voltage) ); Set_battery_Voltage_Ble_Ant(); break; case NRF_DRV_SAADC_EVT_LIMIT : break; default: break; } }
using internal reference 0.6V and gain is 1/6. So I thought max voltage is 3.6V
But I Can't measure 3.2~3.6V.
I Changed ACQTIME . it was not work.
First screenshot is 3.1V. it works well.
Second screenshot is 3.3V. but the data is more lower.
Thank you.