#include <LiquidCrystal_I2C.h>
#define I2C_ADDR 0x27
#define LCD_COLUMNS 16
#define LCD_LINES 2
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
//pin 9 trigger
//pin 10 echo
const int pTrig = 9;
const int pEcho = 10;
long distance;
long duration;
void setup() {
//
Serial.begin(9600);
pinMode(pTrig, OUTPUT);
pinMode(pEcho, INPUT);
// Init
lcd.init();
lcd.backlight();
// Print something
lcd.setCursor(0, 0);
lcd.print("Durasi: Jarak:");
}
long durasi = 0;
void loop() {
// put your main code here, to run repeatedly:
//Trigger selama 10us
digitalWrite(pTrig, HIGH);
delayMicroseconds(10);
digitalWrite(pTrig, LOW);
durasi = pulseIn(pEcho, HIGH);
Serial.print("Durasi : ");
Serial.print(durasi);
Serial.print(" , Jarak : ");
Serial.println((durasi *0.034)/2);
delay(1000);
lcd.setCursor(0,1);
//read Durasi
lcd.print(durasi);
lcd.setCursor(10,1);
//read jarak
lcd.print((durasi *0.034)/2);
}