const int triggerPin = 2;
const int echoPin = 3;
const int LED1 = 4;
const int LED2 = 5;
const int LED3 = 6;
const int buttonPin = 7;
int buttonState = 0;
long durasi;
int jarak;
void setup() {
pinMode(triggerPin, OUTPUT);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(triggerPin, LOW);
delayMicroseconds(2);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
durasi = pulseIn(echoPin, HIGH);
jarak = durasi*0.034/2;
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH){
digitalWrite(LED1, HIGH);
digitalWrite(LED2, HIGH);
Serial.println("LED 1&2 ON 19 detik");
delay(19000);
}else{
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
Serial.println("LED 1&2 OFF");
}
if(jarak < 31){
Serial.println("Jarak kurang dari 31");
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
digitalWrite(LED3, HIGH);
}else if(jarak > 15){
Serial.println("Jarak lebih dari 15cm");
digitalWrite(LED1, HIGH);
digitalWrite(LED2, LOW);
digitalWrite(LED3, LOW);
}
}