Arduino Uno AREF

Hi Gang

I'm trying use an Arduino Uno to read the RSSI voltage of a video receiver which varies between 0.5V and 1.15V. I'm thinking my simplest solution would be to use analogReference(INTERNAL); which is 1.1V to give me the best resolution. My concern is that I 'may' exceed the AREF voltage by 0.05V. Will this be a problem?

Cheers

Jase :slight_smile:

Hi Jase, no, not a problem. The voltage would have to exceed 5V to cause any damage. However, any voltage over 1.1V would give the same result of 1023 from analogRead().

If you know the supply voltage is stable, or you are using an external voltage regulator or the Arduino's regulator, you can measure the regulated supply with your DMM and not bother with the internal reference. Internal voltage ref can be very useful if the Arduino is powered by batteries and you are bypassing the voltage regulator to increase battery life for example.

If measuring such a small range of voltages using the ~5V supply as reference is not sufficiently accurate, you can use a voltage divider to scale down the voltage to be measured. You could do this with the internal reference also.

Paul

AREF needs a low impedance voltage reference, it has significant current flow, so
a voltage divider won't be very accurate (about 0.15mA which may vary during conversion)

MarkT:
AREF needs a low impedance voltage reference, it has significant current flow, so
a voltage divider won't be very accurate (about 0.15mA which may vary during conversion)

Unless you use low value resistors for your voltage divider, surely?!?

For example 2K2 and 1K should allow enough current. Downside would be the low value resistors might drag down the voltage the OP is trying to measure...

Hi PaulRB

Thanks for the reply. I'm relatively new to electronics so I don't quite follow your suggestion;

If you know the supply voltage is stable, or you are using an external voltage regulator or the Arduino's regulator, you can measure the regulated supply with your DMM and not bother with the internal reference. Internal voltage ref can be very useful if the Arduino is powered by batteries and you are bypassing the voltage regulator to increase battery life for example.

If measuring such a small range of voltages using the ~5V supply as reference is not sufficiently accurate, you can use a voltage divider to scale down the voltage to be measured. You could do this with the internal reference also.

Are the above simply general characteristics of AREF?

Cheers

Jase :slight_smile:

Hi Mark

Thanks for the reply. I'm relatively new to electronics so I'm not quite sure what you are saying here?

AREF needs a low impedance voltage reference, it has significant current flow, so
a voltage divider won't be very accurate (about 0.15mA which may vary during conversion)

I thought impedance was related to AC? Will using a voltage divider reduce the current flow too much even though it will be the correct voltage?

Cheers

Jase :slight_smile:

PaulRB:
Unless you use low value resistors for your voltage divider, surely?!?

From my testing that is not the case. The net affect was to go from 1 LSB of error to as many as three.

Well, I'm not sure why the AREF pin came into the discussion, Jase. That's for an external reference voltage. But you asked about the internal reference.

I think you should experiment and see what works. Go with Vcc as the reference first of all. If that is not accurate enough, try a 2:1 voltage divider (e.g. 4K7 and 2K2) or switch to the internal reference, or maybe both.

Paul

PaulRB:

MarkT:
AREF needs a low impedance voltage reference, it has significant current flow, so
a voltage divider won't be very accurate (about 0.15mA which may vary during conversion)

Unless you use low value resistors for your voltage divider, surely?!?

For example 2K2 and 1K should allow enough current. Downside would be the low value resistors might drag down the voltage the OP is trying to measure...

That's a divider with impedance 680 ohms, so 0.1V error (with unknown amount
of variation during conversion - AREF is supposed to be held constant during a
conversion).
Suggest adding 3.3uF capacitor to AREF to buffer it during conversion to 1 LSB
(impedance of 30 ohms or so will limit the effect of 0.15mA to 5mV (1 LSB), 3.3uF
has impedance of 30 ohms on a 100us timescale.