const int trigPin = 13 ; // Pin trigger ultrasonik
const int echoPin = 12 ; // Pin echo ultrasonik
const int ledPin = 7 ; // Pin LED
const int buzzerPin = 8 ; // Pin buzzer
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(ledPin, OUTPUT );
pinMode(buzzerPin, OUTPUT);
}
void loop() {
long duration, distance;
// Mengirim sinyal ultrasonik
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH );
delayMicroseconds(10);
digitalWrite(trigPin, LOW );
// Menerima waktu pantulan ultrasonik
duration = pulseIn( echoPin, HIGH);
// Menghitung jarak berdasarkan waktu pantulan
distance = duration * 0.034 / 2;
// Menampilkan jarak pada Serial Monitor
Serial.print("Jarak: ");
Serial.print( "Measured Distance : ");
Serial.println(distance);
// Jika jarak kurang dari atau sama dengan 20 cm, nyalakan LED dan buzzer, dan sebalikanya pada else
if (distance<20) {
digitalWrite(ledPin,HIGH);
tone(buzzerPin,300);
} else {
digitalWrite(ledPin,LOW);
noTone(buzzerPin);
}
// Tunggu sebentar sebelum mengukur kembali
delay(1000);
}