I want to power Arduino UNO+Adafruit data logger (https://www.adafruit.com/product/1141) with a 3.7V 2000mAh Li-Poly battery. I am providing an excitation voltage of 3V, through one of the digital pins and a potential divider arrangement, to a sensor which is providing output signal in analog (voltage) form. I am using ADC to read that voltage. My question is, since the battery voltage is going to drop during its operation, would the voltage output from the digital pin, and thus the potential divider, also drop? Could this voltage drop also affect the reference for the ADC?
You can't run the Arduino UNO directly from 3.7V.
You can use a boost regulator to step up to 5V and feed that into the 5V pin - in which case your question becomes null and void, since you are running at 5V, not 3.7V.
Or you can perform some hardware and/or fuse modifications and run the board directly from 3.7V into the 5V pin:
- You will have to change the surface mount resonator to an 8MHz one instead of the normal 16MHz, or
- Switch the clock to use the internal RC oscillator by reprogramming the fuses.
Either way you will then have to also modify the board configuration in the IDE to run at the new clock speed.
So given all that the simplest thing to do is to invest in a 5V boost regulator. Personally I'd suggest the LiPower Shield from Sparkfun. It also has a "fuel gauge" chip to monitor the batter charge.
Either that or scrap the Uno and invest in a development board that is designed to run from a Li-Poly / Li-Ion / LiFePO4 battery.