#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int focoblu = 23;
int focore = 18;
int focogre = 4;
int focoye = 2;
int pulsadorg = 14;
int pulsadorv = 12;
int estado1;
int estado2;
int trig = 27;
int echo = 26;
int tiempo;
int distancia;
void setup() {
Serial.begin(9600);
pinMode(focoblu, OUTPUT);
pinMode(focore, OUTPUT);
pinMode(focogre, OUTPUT);
pinMode(focoye, OUTPUT);
pinMode(pulsadorg, INPUT);
pinMode(pulsadorv, INPUT);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
lcd.init();
lcd.backlight();
}
void loop() {
estado1 = digitalRead(pulsadorg);
estado2 = digitalRead(pulsadorv);
digitalWrite(trig, HIGH);
delay(1);
digitalWrite(trig, LOW);
digitalWrite(echo, HIGH);
tiempo=pulseIn(echo, HIGH);
distancia= tiempo/58;
lcd.setCursor(0,0);
if (distancia<50){
digitalWrite(focogre,HIGH);
lcd.print(distancia);
}
else{
digitalWrite(focogre,LOW);
}
if (distancia >50 && distancia < 100){
digitalWrite(focoye,HIGH);
lcd.print(distancia);
}
else{
digitalWrite(focoye,LOW);
}
if (distancia>100){
digitalWrite(focore,HIGH);
lcd.print(distancia);
lcd.setCursor (0, 1);
lcd.print("focored On");
}
else{
digitalWrite(focore,LOW);
}
if(estado1==LOW && distancia>100){
digitalWrite(focoblu, HIGH);
}
if(estado2==LOW && distancia<50){
digitalWrite(focoblu, LOW);
}
}