#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup(){
pinMode(3, OUTPUT); pinMode(4, OUTPUT);
pinMode(5, OUTPUT); pinMode(A0, INPUT);
lcd.init();
lcd.setCursor(0, 0);
lcd.backlight();
lcd.display();
}
void loop(){
int val = analogRead(A0);
val = map(val, 0, 1023, 0, 255);
int newVal = val * 100 / 255;
if (newVal >= 0 && newVal <= 33){
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
} else if (newVal >= 34 && newVal <= 66){
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
} else if (newVal >= 66 && newVal <= 99){
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
} else {
for (int i = 0; i < 5; i++) {
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
delay(50);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
}
}
lcd.setCursor(0, 0);
lcd.print("Led: ");
lcd.setCursor(4, 0);
lcd.print(newVal);
lcd.print("%");
delay(500);
lcd.clear();
}