#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd_1(0x27,20,4);
#define trig 8
#define echo 7
#define led_red 13
#define led_yellow 12
#define led_green 11
#define buzzer 10
float abstand = 0.0 ;
float volume = 0.5;
int pipsenDauer = 200;
void setup() {
Serial.begin(115200);
lcd_1.init();
lcd_1.backlight();
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(led_red, OUTPUT);
pinMode(led_yellow, OUTPUT);
pinMode(led_green, OUTPUT);
pinMode(buzzer, OUTPUT);
}
float readdistanceCM(){
digitalWrite(trig, HIGH);
delay(10);
digitalWrite(trig, LOW);
abstand = pulseIn(echo, HIGH)/58;
return abstand ;
}
void loop() {
float distance = readdistanceCM();
Serial.print("Abstand in CM: ");
Serial.println(abstand);
lcd_1.clear();
lcd_1.setCursor(0, 1);
lcd_1.print("Abstand: ");
lcd_1.print(distance);
lcd_1.print(" cm");
if (distance < 100) {
digitalWrite(led_red, HIGH);
digitalWrite(led_yellow, LOW);
digitalWrite(led_green, LOW);
}
else if (distance >= 100 && distance <= 250) {
digitalWrite(led_red, LOW);
digitalWrite(led_yellow, HIGH);
digitalWrite(led_green, LOW);
}
else {
digitalWrite(led_red, LOW);
digitalWrite(led_yellow, LOW);
digitalWrite(led_green, HIGH);
}
delay(1000);
}