#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#define trig_pin 5
#define echo_pin 4
#define l_verde 6
#define l_vermelho 8
#define buzzer 2
int print_timer;
void setup ()
{
lcd.init();
lcd.backlight();
lcd.print("ULTRASSOM");
Serial.begin(9600);
pinMode(trig_pin, OUTPUT);
pinMode(echo_pin, INPUT);
pinMode(l_verde, OUTPUT);
pinMode(l_vermelho, OUTPUT);
pinMode(buzzer, OUTPUT);
digitalWrite(trig_pin, LOW);
}
void loop()
{
if(millis() - print_timer > 500)
{
print_timer = millis();
digitalWrite(trig_pin, HIGH);
delayMicroseconds(11);
digitalWrite(trig_pin, LOW);
int pulse_time = pulseIn(echo_pin, HIGH);
double distance = 0.01715*pulse_time;
Serial.print("Distancia: ");
Serial.print(distance);
Serial.println( " cm");
if (distance>100){
digitalWrite(l_vermelho, HIGH);
digitalWrite(l_verde, LOW);
} else{
digitalWrite(l_vermelho, LOW);
digitalWrite(l_verde, HIGH);
}
lcd.setCursor(0, 1);
lcd.print("Dist: ");
lcd.print(distance);
lcd.print(" cm");
}
}