#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27,16,2);
long bacajarak (int triggerPin, int echoPin){
pinMode(triggerPin, OUTPUT);
pinMode(echoPin,INPUT);
digitalWrite(triggerPin, LOW);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
return pulseIn(echoPin,HIGH);
}
void setup() {
// put your setup code here, to run once:
lcd.init();
lcd.backlight();
pinMode(22, OUTPUT);
pinMode(23, OUTPUT);
pinMode(24, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
int cm;
cm = (0.03446 * bacajarak(2,3))/2;
lcd.setCursor(0,0);
lcd.print(cm);
lcd.clear();
lcd.setCursor(0,1);
lcd.print("");
if(cm>15){
digitalWrite(22,0);
digitalWrite(23,0);
digitalWrite(24,1);
lcd.print("jarak aman");
}
if(cm<15 && cm>5){
digitalWrite(22,0);
digitalWrite(23,1);
digitalWrite(24,0);
lcd.print("jaraksedang");
}
if(cm<5){
digitalWrite(22,1);
digitalWrite(23,0);
digitalWrite(24,0);
lcd.print("bahaya");
}
}