Measuring Arduino's 5V output

The Arduino’s 5V voltage output will depend on the input source, and usually will not be exactly 5V. Is it possible for Arduino to measure that exact voltage, directly, using its analog input pin?

As well, say I wanted to use the Arduino’s USB connection to the computer ONLY for serial monitoring, and NOT for powering. Is it possible to do that?

Definitely possible, you connecting your 5v to resistor divider, bringing it down below 1V, and activate internal voltage reference for the ADC

Actually there is a way for a sketch to be able to measure it's own Vcc voltage on the run and even come up with a compensation value to scale/calibrate the analogRead return value as Vcc changes. There is a method to make your A/D measurements independent with variation of the Vcc used as the A/D reference. The trick is to read the bandgap voltage (not use it as the reference) and come up with a correction factor to utilize in mapping your analog input readings. This is especially useful if you are powering the processor directly with batteries.

To Improving Accuracy you measure the actual band gap value for your specific chip by measurement of the AREF pin with a decent quality Digital voltmeter then replace the constant 1125300 = 1.1(reading from band gap voltage) *1023*1000

http://provideyourown.com/2012/secret-arduino-voltmeter-measure-battery-voltage/ http://forum.arduino.cc/index.php/topic,38119.0.html Problems finding Vcc using bandgap voltage method http://forum.arduino.cc/index.php?topic=88935.0

@BillHo: This is very helpful, thank you!