Hello again everybody,
I have successfully studied with PIC18F252 and its easy to use 10-bit A/D conversion. I'm designing some temperature controller stuff to use in our university labs.
New generation 18F pics (2520, 2523(12-bit), 2550 and 4550 (with USB). I have never achieved to any precise measurement level with these pics. There's always a difference in the results of Keithley multimer and Pic, to the contrary of "lovely" 18F252, in the levels of 10-20 mV. This difference is sometimes linear or non-linear depending on the addition of capacitors and/or RC filters at the voltage and ref. inputs. (I've never needed to use these precautions on 18F252). I've tried to fix the parameters of ADCON registers, tried many combinations of timing, but it's useless. My reference voltage is provided from Maxim's precision ICs (4096 mV or 2048 mV).
Today, finally I've desperately tried to develop the A/D conversion process of USB demo program written by Mister E and Darrel Taylor (Thanks to them for their great USB comm. example program). I've changed the 8-bit (0-255) resolution of potentiometer voltage to 10-bit (0-1023) by dividing ADREAD variable to low and high bytes, and succesfully combined them in VB6 program to produce the 10-bit result. But the result is still different with this program code.
I'm using picbasic pro 2.47 and latest version of MPASM. I also tried to write the code in assembler according to the timing diagrams of Microchips manual.
I never encountered any problem in 18F252 (no capacitor, no filter, a simple reference source from op-amp buffered voltage divider, max. of 1-2 mV error). But I need to use A/D conversion within a USB Pic and/or in a 12-bit Pic (Unfortunately, all of these pics' A/D conversion procedures are differs from 18F252).
As a summary, can anybody explain where I made mistake(s).
If you've experienced with that kind of millivolt precision application on these Pics, can you provide me the picbasic code of A/D conversion.
(sorry about my English)
Thank You..
Dr Selim Kara
Bookmarks