#include <LiquidCrystal.h>

LiquidCrystal lcd(12,11,5,4,3,2);

const int trig = 9;
const int echo = 10;
long waktu;
long jarak;
int buzz =3, ledH =A0, ledM = A1;

void buzzer();

void setup() {
  pinMode(trig, OUTPUT);
  pinMode(echo, INPUT);
  pinMode(ledH, OUTPUT);
  pinMode(ledM, OUTPUT);
  pinMode(buzz, OUTPUT);

  lcd.begin(20,4);



}

void loop() {
  digitalWrite(trig,LOW);
  delayMicroseconds(2);
  digitalWrite(trig,HIGH);
  delayMicroseconds(10);
  digitalWrite(trig,LOW);

  waktu = pulseIn(echo,HIGH);
  jarak = waktu * 0.034 / 2 ;

  lcd.setCursor(7,0);
  lcd.print("Jarak: ");
  lcd.setCursor(8,1);
  lcd.print(jarak);
  lcd.print(" cm");
  lcd.setCursor(0,2);
  lcd.print("LedM");
  lcd.setCursor(16,2);
  lcd.print("LedH");

  if(jarak<4){
    digitalWrite(ledM, HIGH);
    digitalWrite(ledH, LOW);
    lcd.setCursor(0,3);
    lcd.print("ON");
    lcd.setCursor(17,3);
    lcd.print("OFF");
    buzzer();
  } else {
    digitalWrite(ledM, LOW);
    digitalWrite(ledH, HIGH);
    lcd.setCursor(0,3);
    lcd.print("OFF");
    lcd.setCursor(17,3);
    lcd.print("ON ");
  }

  delay(2000);
  lcd.setCursor(0,1);
  lcd.print("                  ");
  lcd.setCursor(0,3);
  lcd.print("                  ");

}


void buzzer(){
  for(int i=0; i<=1000; i++){
    digitalWrite(buzz, HIGH);
    delayMicroseconds(100);
    digitalWrite(buzz, LOW);
    delayMicroseconds(100);
  }
}
nano:12
nano:11
nano:10
nano:9
nano:8
nano:7
nano:6
nano:5
nano:4
nano:3
nano:2
nano:GND.2
nano:RESET.2
nano:0
nano:1
nano:13
nano:3.3V
nano:AREF
nano:A0
nano:A1
nano:A2
nano:A3
nano:A4
nano:A5
nano:A6
nano:A7
nano:5V
nano:RESET
nano:GND.1
nano:VIN
nano:12.2
nano:5V.2
nano:13.2
nano:11.2
nano:RESET.3
nano:GND.3
lcd1:VSS
lcd1:VDD
lcd1:V0
lcd1:RS
lcd1:RW
lcd1:E
lcd1:D0
lcd1:D1
lcd1:D2
lcd1:D3
lcd1:D4
lcd1:D5
lcd1:D6
lcd1:D7
lcd1:A
lcd1:K
r1:1
r1:2
bz1:1
bz1:2
led1:A
led1:C
r2:1
r2:2
led2:A
led2:C
r3:1
r3:2
ultrasonic1:VCC
ultrasonic1:TRIG
ultrasonic1:ECHO
ultrasonic1:GND