I've a KL17 QFN32 processor who's ADC appears to have a voltage range of about 1/6th of the expected 0 to 3 volts. 3 volts is what can be measured at the Voltage Reference High pin.
The setup is to convert the ADC input into a 12 bit output using the Voltage Reference High and Low pins (8 and 7 on this package). This is done by setting the ADC0_CFG1 register MODE bits to 0b01. (i.e. "ADC0_CFG1 |= ADC_CFG1_MODE(1);"). But not until I run the voltage at the analog input pin down to ~500mV does the ADC start reducing it's value from the pegged 4095. When I finally hit 0 volts the ADC is giving me values in the 40s and 50s.
What I was expecting were changes in the values from 0 volts all the way up to 3 volts. For example, 0 volts would have an ADC value of about zero and 1.5 volts would have an ADC value of about 2048 and 3 volts would have an ADC value of about 4096.
Any ideas on what I might check would be appreciated.