Read Analog input at specified interval


I have a problem, I know that my sensor, give me a value between 1.01 V and 1.02 V, and I need to read this value with very high precision.

There is any way with Analog read, to read this voltage value setting 0 at 1.01 V and 1024 at 1.02 V, because with this way I will read the value with the precision I need.

Hi, honestly I don't think you can do so much with a bare Arduino. The limit is the resolution of the ADC which is 5V/1024 steps. What you really need is a "signal conditioner" in between form Arduino and your sensor, that amplify the signal range of the sensor (1,01-1,02) to the whole Arduino ADC (0-5V) and subtract the "bias" (1,01V). Be careful, this means to have (1,02-1,01)/1024V/bit = 10uV/bit resolution at the end, so.. pay attention to bias, noise, disturbance, drifting..everything must be "small enought" to keep the reading meaningful..

Good experimenting


While it's possible to use the internal 1.1V reference source instead of 5V, this will not come really closer to your 0.01V range. You'll have to use an differential amplifier, as outlined before. Depending on your sensor interface, a Wheatstone bridge configuration may allow to use readily available components including amplifier, ADC and digital interface.

What is the board? Mega & Leonardo have differential mode