improving adc resolution?

Hi There,

I'm designing an altimeter/variometer using the arduino environment. I have a pressure sensor that puts out 0-5v which I need to sample. The onboard 10-bit resolution is not enough however.

Instead of increasing the component count by adding an external adc, is there a valid approach documented anywhere where I might sample 0-2.5volts on one ADC channel and 2.5-5volts on a second channel? I could then do two readings and 'sum' them to produce a 20-bit? The sampling rate can be really slow 0.25sec for example

Any ideas?

-Cheers Max

I just got a SCP1000 that has plenty of resolution, but it's a digital device, so you need to use SPI - I'm working on it. At maximum resolution, this thing has one bit for each 9 cm of altitude. Spark Fun has 'em!

D.

ahh but that means I have to add a seperate adc :slight_smile: I'm trying to be both clever and cheap :wink:

I'm looking at another approach which uses the pressure sensor as part of an RC timing network on a digital input, then using interrupts to time it. However I think this approach would require higher resolution timing than the microcontroller can do for a reasonable sample rate.

inspiration here: Variometer-Altimeter

-Max

hi

this is kind of a kooky idea, but it might work:

  • use a voltage divider applied to the Aref pin to set the range at 2.5V
  • at full scale (2.5V), use a digital pin to insert an op-amp into the circuit. the op-amp has the role of subtracting 2.5v from the sensor output.

The drawback to this is that you need an op-amp and some kind of enable circuit. It is starting to sound like a nice little $3 SPI ADC would solve everything perfectly!

D