Introduction
This experiment shows how to build a simple digital voltmeter using an Arduino to measure voltage and display it on an LCD.

Components Needed
- Arduino (e.g., Uno, Nano)
- 16x2 LCD Display
- Voltage Divider
- Jumper wires
Circuit Setup
- Connect the LCD to the Arduino using the I2C pins (SDA and SCL).
- Connect the voltage divider to analog input pin A0 to measure the input voltage.
Ensure the voltage divider is properly configured to scale the input voltage.

Code for Digital Voltmeter
Upload the following code to your Arduino to measure voltage and display it on the LCD:
#include
#include
LiquidCrystal_I2C lcd(0x27, 16, 2);
const int analogPin = A0;
float voltage;
void setup() {
lcd.begin();
lcd.print("Digital Voltmeter");
delay(2000);
}
void loop() {
int sensorValue = analogRead(analogPin);
voltage = sensorValue * (5.0 / 1023.0);
lcd.clear();
lcd.print("Voltage: ");
lcd.print(voltage);
lcd.print(" V");
delay(1000);
}
Explanation
The code reads the voltage from the analog input pin, converts it into a corresponding voltage value, and displays it on the LCD.
Troubleshooting
- If the voltage displayed is incorrect, ensure the voltage divider is correctly set up for the expected input voltage range.
- If the LCD does not display anything, verify the wiring and I2C address.