Banner 468x 60

Tuesday, September 23, 2025

Pptx

 #define trigPin 9

#define echoPin 10

#define ledAman 2

#define led1 3

#define led2 4

#define led3 5

#define buzzer 12  


void setup() {

  Serial.begin(9600);

  pinMode(trigPin, OUTPUT);

  pinMode(echoPin, INPUT);


  pinMode(ledAman, OUTPUT);

  pinMode(led1, OUTPUT);

  pinMode(led2, OUTPUT);

  pinMode(led3, OUTPUT);

  pinMode(buzzer, OUTPUT);  

}


void loop() {

  long duration, distance;


  // Kirim sinyal trigger ke sensor ultrasonik

  digitalWrite(trigPin, LOW);

  delayMicroseconds(2);

  digitalWrite(trigPin, HIGH);

  delayMicroseconds(10);

  digitalWrite(trigPin, LOW);


  // Hitung jarak berdasarkan waktu pantulan

  duration = pulseIn(echoPin, HIGH);

  distance = (duration / 2) / 29.1;


  Serial.print("DURASI: ");

  Serial.print(duration);

  Serial.print(" , JARAK: ");

  Serial.println(distance);


  // Matikan semua LED dan buzzer terlebih dahulu

  digitalWrite(ledAman, LOW);

  digitalWrite(led1, LOW);

  digitalWrite(led2, LOW);

  digitalWrite(led3, LOW);

  digitalWrite(buzzer, LOW);  


  // Logika berdasarkan jarak

  if (distance >= 16) {

    digitalWrite(ledAman, HIGH);

  } 

  else if (distance <= 15 && distance >= 10) {

    digitalWrite(led1, HIGH);

  } 

  else if (distance < 10 && distance >= 5) {

    digitalWrite(led2, HIGH);

  } 

  else if (distance < 5) {

    digitalWrite(led3, HIGH);

    digitalWrite(buzzer, HIGH);

    delay(200);

    digitalWrite(led3, LOW);

    digitalWrite(buzzer, LOW);

    delay(200);

  }


  delay(100);

}

0 comments:

Post a Comment