//nama fajri febriansyah
//npm 22.11.5143
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27,16,2);
long bacajarak(int triggerpin, int echoPin){
pinMode(triggerpin, OUTPUT);
digitalWrite(triggerpin, LOW);
digitalWrite(triggerpin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerpin, LOW);
pinMode(echoPin, INPUT);
return pulseIn(echoPin, HIGH);
}
void setup() {
// put your setup code here, to run once:
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
lcd.init();
lcd.backlight();
}
void loop() {
// put your main code here, to run repeatedly:
int cm = 0;
cm = (0.03446 * bacajarak(5, 4)) / 2 ;
if (cm > 15 ) {
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
} else if(cm >= 5 && cm <= 15) {
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
}
else{
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
}
lcd.clear();
lcd.setCursor(0,0);
lcd.print("jarak");
lcd.setCursor(0,1);
lcd.print(cm);
lcd.println("cm");
delay(100);
}