I've got some concerns about the performance of the 16-bit Kinetis ADC. To help address those, I've made some major mods to the IAR/Freescale ADC demo to generate histograms of ADC readings. Not good news, at least using the K60 Tower kit board reading the onboard pot. Granted, the board does not have a nice stable Vref and pot voltage, but I'm seeing between 4 and 5 bits of noise in averaged readings. If I interpret the data sheet correctly, this ain't meeting spec... Anyone have a genuine product design that does substantially better than this?
If anyone cares to compare results, I've attached the code and sample histograms in the adc_histo\histograms\ folder.
Original Attachment has been moved to: adc_histo.zip
Software
There are several configurations application depended; these are some recommendations that will improve the ADC performance
Hardware
Grounds and power supplies
Inputs
Trace routing
To summarize the ADC performance won’t be the optimal by just loading different software. It’s very depended to the application requirements and the amount of best practices that can be adopt.
I did a quick test with one of our custom boards. Since I have not used your files, these are my settings:
16 bit differential input, (source is buffered with an OP because of the low input resistance of the ADC)
Acquisition time is about 230us (with maximum hardware averaging and long delays)
Reference voltage is 3.3V
For my purposes I record 4 different channels every second.
The following histogram is from 1 channel measured 4 times with 8000 data points each.
So I get better results. even slightly better than your scanB. I also checked that the width of the distribution stays almost the same across the full input voltage range.(increasing a little for higher voltages)
It would be interesting to see how to get the best results, so the more data to compare the more we will know.