//https://www.youtube.com/watch?v=qIHbL_xOWgY
const int trigPin = 10;
const int echoPin = 9;
const int buzzer = 12;
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
float duration, distance;
void setup() {
lcd.init();
lcd.backlight();
pinMode(7, OUTPUT);
pinMode(buzzer, OUTPUT);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
lcd.setCursor(1,0);
lcd.print ("Hello Taufikq");
delay(500);
duration = pulseIn(echoPin, HIGH);
distance = (duration*.0343)/2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm ");
lcd.setCursor(0,0);
lcd.print("Distance: ");
lcd.print(distance);
lcd.print(" cm ");
delay(200);
if(distance<=20){
digitalWrite(buzzer,HIGH);
delay(500);
digitalWrite(12, HIGH);
delay(900); // Wait for 900 millisecond(s)
digitalWrite(12, LOW);
delay(300); // Wait for 300 millisecond(s)
}else{
digitalWrite(buzzer,LOW);
digitalWrite(12, HIGH);
delay(900); // Wait for 900 millisecond(s)
digitalWrite(12, LOW);
delay(300); // Wait for 300 millisecond(s)
}
}