#include "LCD_I2C.h"
LCD_I2C lcd(0x27, 16, 2);
#include <NewPing.h>
#define TRIGGER_PIN 12
#define ECHO_PIN 11
#define MAX_DISTANCE 200
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
void setup()
{
lcd.begin();
lcd.backlight();
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
}
void loop()
{ int ultrasonic = sonar.ping_cm();
lcd.setCursor(0,0);
lcd.print("JARAK: ");
lcd.print(ultrasonic);
delay(50);
lcd.clear();
if(ultrasonic<=9)
{
lcd.setCursor(0,0);
lcd.print("JARAK: 0");
lcd.print(ultrasonic);
lcd.setCursor (0,1);
lcd.print("Mod : SGT DEKAT");
delay(100);
lcd.clear();
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
}
if(ultrasonic<20)
{
lcd.setCursor(0,0);
lcd.print("JARAK: ");
lcd.print(ultrasonic);
lcd.setCursor (0,1);
lcd.print("Mod : SANGAT DEKAT");
delay(100);
lcd.clear();
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
}
if(ultrasonic>=20 && ultrasonic<40)
{
lcd.setCursor(0,0);
lcd.print("JARAK: ");
lcd.print(ultrasonic);
lcd.setCursor (0,1);
lcd.print("Mod : DEKAT");
delay(100);
lcd.clear();
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
}
if(ultrasonic>=40 && ultrasonic<60)
{
lcd.setCursor(0,0);
lcd.print("Jarak: ");
lcd.print(ultrasonic);
lcd.setCursor (0,1);
lcd.print("Mod : SEDERHANA");
delay(100);
lcd.clear();
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
}
if(ultrasonic>=60 && ultrasonic<80)
{
lcd.setCursor(0,0);
lcd.print("JARAK: ");
lcd.print(ultrasonic);
lcd.setCursor (0,1);
lcd.print("Mod : JAUH");
delay(100);
lcd.clear();
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
}
if(ultrasonic>=80)
{
lcd.setCursor(0,0);
lcd.print("JARAK: ");
lcd.print(ultrasonic);
lcd.setCursor (0,1);
lcd.print("Mod : SGT JAUH");
delay(100);
lcd.clear();
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
}
}