#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // Endereço I2C do LCD
int trigPin = 2; // Pino do Trig
int echoPin = 3; // Pino do Echo
int ledPin = 4; // Pino do LED
void setup() {
lcd.begin(16, 2);
lcd.backlight();
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(ledPin, OUTPUT);
lcd.print("Distancia:");
}
void loop() {
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2; // Converte para cm
lcd.setCursor(0, 0);
lcd.print("Mínimo: 18cm ");
lcd.println("Máximo: 125cm");
delay(500)
lcd.setCursor(0, 0);
lcd.print("Atual:");
lcd.print(distance);
lcd.print("");
if (distance <= 17) {
digitalWrite(ledPin, HIGH); // Liga o LED
lcd.print(" LED:ON");
} else if (distance >= 123) {
digitalWrite(ledPin, LOW); // Desliga o LED
lcd.print(" LED:OFF");
} else {
digitalWrite(ledPin, LOW); // Desliga o LED
lcd.print(" LED:OFF");
}
delay(500); // Aguarda meio segundo antes de ler novamente
}