#include <LiquidCrystal_I2C.h>
#define I2C_ADDR 0x27
#define LCD_COLUMNS 20
#define LCD_LINES 4
#define triger 5
#define echo 4
const int bajer = 3;
const int ledPin = 13;
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
void setup() {
pinMode(bajer, OUTPUT);
pinMode(triger, OUTPUT);
pinMode(echo, INPUT);
pinMode(ledPin, OUTPUT);
lcd.init();
lcd.backlight();
Serial.begin(9600);
}
void loop() {
digitalWrite(triger, LOW);
delayMicroseconds(2);
digitalWrite(triger, HIGH);
delayMicroseconds(10);
digitalWrite(triger, LOW);
int durasi = pulseIn(echo, HIGH);
int jarak = durasi * 0.034 / 2;
Serial.print("Jarak: ");
Serial.print(jarak);
Serial.println(" cm");
lcd.setCursor(3, 0);
lcd.print("Jarak = ");
if (jarak < 100) {
lcd.print(bajer);
digitalWrite(bajer, HIGH);
digitalWrite(ledPin, HIGH);
delay(1000);
} else {
lcd.print(bajer);
digitalWrite(bajer, LOW);
digitalWrite(ledPin, LOW);
delay(1000);
}
}