#define TRIG_PIN 18
#define ECHO_PIN 5
#define BUZZER_PIN 2
#define LED_PIN 4
void setup() {
Serial.begin(115200);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(BUZZER_PIN, OUTPUT);
pinMode(LED_PIN, OUTPUT);
}
float mesafeOlc() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
long sure = pulseIn(ECHO_PIN, HIGH);
float mesafe = sure * 0.0343 / 2;
return mesafe;
}
void loop() {
float mesafe = mesafeOlc();
Serial.print("Mesafe: ");
Serial.print(mesafe);
Serial.println(" cm");
// Alarm mesafe sınırı
if (mesafe > 0 && mesafe < 20) {
int hiz = map(mesafe, 1, 20, 50, 500); // Mesafe azaldıkça daha hızlı beep
digitalWrite(BUZZER_PIN, HIGH);
digitalWrite(LED_PIN, HIGH);
delay(50);
digitalWrite(BUZZER_PIN, LOW);
digitalWrite(LED_PIN, LOW);
delay(hiz);
}
else {
digitalWrite(BUZZER_PIN, LOW); // Ses kapalı
digitalWrite(LED_PIN, LOW);
}
delay(50);
}