#define PIN_TRIG 34
#define PIN_ECHO 26
#define LED1_PIN 35
#define LED2_PIN 32
#define LED3_PIN 25
#define BUZZER_PIN 12
void setup() {
Serial.begin(115200);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
pinMode(LED1_PIN, OUTPUT);
pinMode(LED2_PIN, OUTPUT);
pinMode(LED3_PIN, OUTPUT);
pinMode(BUZZER_PIN, OUTPUT);
digitalWrite(BUZZER_PIN, LOW);
}
void loop() {
// Start a new measurement:
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
// Read the result:
int duration = pulseIn(PIN_ECHO, HIGH);
int distanceCM = duration / 58; // Distance en centimètres
int distanceInches = duration / 148; // Distance en pouces
Serial.print("Distance in CM: ");
Serial.println(distanceCM);
Serial.print("Distance in inches: ");
Serial.println(distanceInches);
// Contrôler les LEDs et le buzzer en fonction de la distance mesurée
if (distanceCM < 20) {
digitalWrite(LED1_PIN, HIGH);
digitalWrite(LED2_PIN, LOW);
digitalWrite(LED3_PIN, LOW);
digitalWrite(BUZZER_PIN, LOW);
} else if (distanceCM >= 20 && distanceCM < 40) {
digitalWrite(LED1_PIN, LOW);
digitalWrite(LED2_PIN, HIGH);
digitalWrite(LED3_PIN, LOW);
digitalWrite(BUZZER_PIN, LOW);
} else if (distanceCM >= 40 && distanceCM < 60) {
digitalWrite(LED1_PIN, LOW);
digitalWrite(LED2_PIN, LOW);
digitalWrite(LED3_PIN, HIGH);
digitalWrite(BUZZER_PIN, LOW);
} else {
digitalWrite(LED1_PIN, LOW);
digitalWrite(LED2_PIN, LOW);
digitalWrite(LED3_PIN, LOW);
digitalWrite(BUZZER_PIN, HIGH);
}
delay(1000);
}