Arduino: two more analog input!
I never worked with Arduino, but most microcontrollers have interrupt pins, so Arduino must have too. If you use a interrupt pin to detect that the capacitor has charged up to to the threshold level, then you will not have delays and your program could run normally while the measurement takes place. You just need to use a pin that allows interrupt.


Assert the pin low
Make sure the pin is low enough time to discharge the capacitor
Enable interrupt and reset a timer
Make the pin an input (the capacitor will start charging)
Execute your code
When the interrupt occurs read the timer value (this is your measured value) and assert the pin low