using the Arduino internal reference 1.1v

So i want to measure a resistor of around 20 ohm in a voltage divider with an Arduino UNO R3. Is there any way on an arduino to use 1.1v instead of 5v? I want to do this to decrease the current, because the resistor to be measured is a small speaker.

• Can't you use a resistor in series with one you are testing? – Bruno Ferreira Jan 19 '15 at 9:21
• The ATMega328 and presumably other related processors allow you to use Aref or and external voltage close to it or the internal 1.1V reference - it's just a matter of selecting the reference via bits specified in the ADC section. I THINK you can get the 1.1V ref available on ARef if you do this - see the processor data sheet (about 600 pages ).. – Russell McMahon Jan 19 '15 at 9:44

The Arduino Uno R3 has a default Reference Voltage of 5V.

You can change it to 1.1V using the analogReference() command as follows:

analogReference(INTERNAL)


Or you can apply an External reference to the ARef pin (0V to 5V):

analogReference(EXTERNAL)


Similar, but different, commands exist for the Mega.

From a circuit perspective, I assume you have an external voltage to apply to your resistor. If the external voltage is not that accurate connect it to an Analog pin for calibration purposes (<1.1V). Or if it is accurate use that as an External Reference.

You can use the 1.1V reference to change what the ADC measures the incoming voltage against. You can't use the 1.1V reference to do the actual measuring though.

That is, you have no access to that 1.1V from outside the chip to connect your resistance to. You would have to provide your own 1.1V (or lower) supply to the resistor network to provide a voltage in the 0-1.1V range. Typically you would then also connect that supply voltage to the $V_{REF}$ pin and switch to the external analog reference. That would give you more accurate results since you are measuring it against the same voltage that is used to generate the output you are measuring.