48 SIM->SCGC3 |= SIM_SCGC3_ADC1_MASK;
52 ADC1->CFG1 = ADC_CFG1_ADICLK(1) | ADC_CFG1_MODE(0b11) | ADC_CFG1_ADIV(0b11) |
53 ADC_CFG1_ADLPC_MASK | ADC_CFG1_ADLSMP_MASK;
55 ADC1->CFG2 = ADC_CFG2_MUXSEL_MASK | ADC_CFG2_ADLSTS(0);
57 ADC1->SC3 = ADC_SC3_AVGE_MASK | ADC_SC3_AVGS(0b11);
100 raw = adc_read_raw(MULLE_ADC_VCHR_ADC_NUM, MULLE_ADC_VCHR_CHANNEL);
#define MULLE_ADC_VREFL_MILLIVOLTS
Voltage reference low for ADC computations (millivolts).
uint16_t voltage_read_vbat()
#define SIM
Peripheral SIM base pointer.
Board configuration defines for Mulle platform.
K60 hardware register header wrapper.
#define ADC1
Peripheral ADC1 base pointer.
#define MULLE_ADC_VBAT_ADC_NUM
Which channel should perform Vbat measurements.
uint16_t voltage_from_raw_adc(uint16_t adc_raw)
Scale a raw ADC reading from 0..65535 to millivolts depending on the board's VREFH, VREFL reference voltages.
#define MULLE_ADC_VREFHL_SCALE_MILLIVOLTS
Total span of ADC measurement (millivolts).
Helper functions for reading Mulle platform board voltages.