#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int Trig = 9; //Pin digital 2 para el Trigger del sensor
int Eco = 10; //Pin digital 3 para el Echo del sensor
int Led = 3;
int Led2 = 4;
int DURACION;
int DISTANCIA;
void setup() {
lcd.init();
lcd.backlight();
Serial.begin(9600); //inicializamos la comunicación
pinMode(Trig, OUTPUT); //pin como salida
pinMode(Eco, INPUT); //pin como entrada
pinMode(Led, OUTPUT);
pinMode(Led2, OUTPUT);
digitalWrite(Trig, LOW); //Inicializamos el pin con 0
}
void loop()
{
digitalWrite(Trig, HIGH);
delay(1); //Enviamos un pulso de 10us
digitalWrite(Trig, LOW);
DURACION = pulseIn(Eco, HIGH); //Devuelve el valor de tiempo en us
DISTANCIA = DURACION/58.2; //distancia en cm
Serial.print("Distancia: ");
Serial.print(DISTANCIA); //Enviamos serialmente el valor de la distancia
Serial.println("cm");
lcd.setCursor(1, 0);
lcd.print("Distancia:");
lcd.print(DISTANCIA);
lcd.println("cm");
delay(150); //Hacemos una pausa de 150ms
if (DISTANCIA <=20 && DISTANCIA >= 0){
digitalWrite(Led, HIGH);
delay(DISTANCIA*10);
digitalWrite(Led, LOW);
}
if (DISTANCIA >=335){
digitalWrite(Led2, HIGH);
delay(DISTANCIA*10);
digitalWrite(Led2, LOW);
}
}