#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int trig = 11 ;
int echo = 12 ;
int speaker = 10;
long durasi, jarak;
void setup() {
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(speaker, OUTPUT);
lcd.begin (16,2);
lcd.setCursor(1, 0);
lcd.print("TEKNIK JARINGAN KOMPUTER");
lcd.setCursor(3, 1);
lcd.print("Ultrasonic");
delay(3000);
Serial.begin(9600);
}
void loop() {
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Jarak :");
lcd.print(jarak);
lcd.print(" cm");
lcd.setCursor(2,1);
digitalWrite(trig, LOW);
delayMicroseconds(8);
digitalWrite(trig, HIGH);
delayMicroseconds(8);
digitalWrite(trig, LOW);
delayMicroseconds(8);
durasi = pulseIn(echo, HIGH);
jarak = (durasi/2) /29.1;
Serial.println(jarak);
delay(5);
if (jarak < 50 )
{
tone (speaker,300);
delay(200);
noTone(8);
delay(5);
lcd.print(" Awas nabrak ");
digitalWrite(speaker, HIGH);
delay(200);
}
else if (jarak > 100 )
{
noTone (speaker);
lcd.print(" jarak aman ");
digitalWrite(speaker, LOW);
delay(200);
}
delay(500);
lcd.clear();
}