An enlightenment will be appreciated
Vic
Someone was discussing ADC resolution some time ago...didnt pay much attention to it at the time of course but.....if I recall, the PIC internal 10 bit ADC really is good for only 8 bits, and other 12 bit ADC are really only good for 10 bits...to get a true 10 or 12 bit ADC its going to have to be an external device?
I'm using the A/D converter at the moment for a temperature sensor, and it accurately reads all 10 bits of the temperature (this is good, as it has a
10mV/K difference. This means at 5V each bit is about half a degree). Almost always the result is identical to the temperature in the room (as given by my thermostate). However, occasionally it starts to oscillate between the correct value and a value that is 10 degrees higher. I doubt this is caused by the lack of resolution, though: most likely it is a true oscillation in the voltage. As it only happens occasionally, it is rather hard to debug (it, of course, never happens when it is hooked up through the PICkit 2).
I remember seeing somewhere that to get the full resolution you need to have the PIC sleeping during the conversion. That way digital noise will not be a problem. Are you doing that?
hmmm...makes sense, but is this true? Right now I am just looking at a project spec to bid on, and trying to decide if a 16bit PIC will work or if I need to use external ADC and DACs
If you're meticulous about the environment the ADC has to work
in you can do better than 8 bits. Conversion in sleep, filtered
supply and reference, grounding etc. All good design practices
That hardly reduces the noise. The PIC's ADC is rather primitive (I think of it as a stretched 8 bit AD) and even if you sleep you'll still have noise. The only guaranteed way to get rid of it is to average 8-16 samples. Or if you require higher sampling rate use an external ADC with much lower noise. Analog Devices makes good ones.