// // #include "Ultrasonic.h"
// // int capTRIG=13;
// // int capECHO=12;
// // int ledROUGE=7;
// // int ledJAUNE=6;
// // int ledVERTE=5;
// // int destance;
// // int buzzer=3;
// // void setup(){
// // pinMode(capTRIG,OUTPUT);
// // pinMode(capECHO,INPUT);
// // pinMode(ledROUGE,OUTPUT);
// // pinMode(ledJAUNE,OUTPUT);
// // pinMode(ledVERTE,OUTPUT);
// // pinMode(buzzer, OUTPUT);
// // }
// // int Mesureladistance() {
// // digitalWrite(capTRIG,LOW);
// // delayMicroseconds(2);
// // digitalWrite(capTRIG,HIGH);
// // delayMicroseconds(10);
// // digitalWrite(capTRIG,LOW);
// // int duree = pulseIn(capECHO, HIGH);
// // int distanceCM = duree * 0.0343 / 2;
// // return distanceCM;
// // }
// // void loop() {
// // destance= Mesureladistance();
// // if(destance<100){
// // digitalWrite(ledROUGE,HIGH);
// // digitalWrite(ledJAUNE,LOW);
// // digitalWrite(ledVERTE,LOW);
// // tone(6,1800,50);
// // }
// // else if(destance<300){
// // digitalWrite(ledROUGE,LOW);
// // digitalWrite(ledJAUNE,HIGH);
// // digitalWrite(ledVERTE,LOW);
// // }
// // else{
// // digitalWrite(ledROUGE,LOW);
// // digitalWrite(ledJAUNE,LOW);
// // digitalWrite(ledVERTE,HIGH);
// // }
// // }
// #include "pitches.h"
// int buzzer = 8;
// int melody[] = {
// NOTE_E7, NOTE_E7, 0, NOTE_E7,
// 0, NOTE_C7, NOTE_E7, 0,
// NOTE_G7, 0, 0, 0,
// NOTE_G6, 0, 0, 0,
// NOTE_C7, 0, 0, NOTE_G6,
// 0, 0, NOTE_E6, 0,
// 0, NOTE_A6, 0, NOTE_B6,
// 0, NOTE_AS6, NOTE_A6, 0,
// NOTE_G6, NOTE_E7, NOTE_G7,
// NOTE_A7, 0, NOTE_F7, NOTE_G7,
// 0, NOTE_E7, 0, NOTE_C7,
// NOTE_D7, NOTE_B6, 0, 0
// };
// int noteDurations[] = {
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 9, 9, 9,
// 12, 12, 12, 12,
// 12, 12, 12, 12,
// 12, 12, 12, 12
// };
// void setup() {
// for (int thisNote = 0; thisNote < 52; thisNote++) {
// int noteDuration = 1000 / noteDurations[thisNote];
// tone(buzzer, melody[thisNote], noteDuration);
// int pauseBetweenNotes = noteDuration * 1.30;
// delay(pauseBetweenNotes);
// noTone(buzzer);
// }
// }
#include "Ultrasonic.h"
#include "pitches.h"
// Pins
int capTRIG = 13;
int capECHO = 12;
int ledROUGE = 7;
int ledJAUNE = 6;
int ledVERTE = 5;
int buzzer = 3;
// Musique Mario
int melody[] = {
NOTE_E7, NOTE_E7, 0, NOTE_E7,
0, NOTE_C7, NOTE_E7, 0,
NOTE_G7, 0, 0, 0,
NOTE_G6, 0, 0, 0,
NOTE_C7, 0, 0, NOTE_G6,
0, 0, NOTE_E6, 0,
0, NOTE_A6, 0, NOTE_B6,
0, NOTE_AS6, NOTE_A6, 0,
NOTE_G6, NOTE_E7, NOTE_G7,
NOTE_A7, 0, NOTE_F7, NOTE_G7,
0, NOTE_E7, 0, NOTE_C7,
NOTE_D7, NOTE_B6, 0, 0
};
int noteDurations[] = {
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12,
9, 9, 9,
12, 12, 12, 12,
12, 12, 12, 12,
12, 12, 12, 12
};
int Mesureladistance() {
digitalWrite(capTRIG, LOW);
delayMicroseconds(2);
digitalWrite(capTRIG, HIGH);
delayMicroseconds(10);
digitalWrite(capTRIG, LOW);
int duree = pulseIn(capECHO, HIGH);
int distanceCM = duree * 0.0343 / 2;
return distanceCM;
}
void setup() {
pinMode(capTRIG, OUTPUT);
pinMode(capECHO, INPUT);
pinMode(ledROUGE, OUTPUT);
pinMode(ledJAUNE, OUTPUT);
pinMode(ledVERTE, OUTPUT);
pinMode(buzzer, OUTPUT);
}
void jouerMario() {
for (int i = 0; i < 52; i++) {
int dureeNote = 1000 / noteDurations[i];
tone(buzzer, melody[i], dureeNote);
delay(dureeNote * 1.30);
noTone(buzzer);
}
}
void loop() {
int dist = Mesureladistance();
if (dist < 100) {
digitalWrite(ledROUGE, HIGH);
digitalWrite(ledJAUNE, LOW);
digitalWrite(ledVERTE, LOW);
// Buzzer alarme
tone(buzzer, 1800, 100);
delay(150);
// Jouer Mario
jouerMario();
} else if (dist < 300) {
digitalWrite(ledROUGE, LOW);
digitalWrite(ledJAUNE, HIGH);
digitalWrite(ledVERTE, LOW);
noTone(buzzer);
} else {
digitalWrite(ledROUGE, LOW);
digitalWrite(ledJAUNE, LOW);
digitalWrite(ledVERTE, HIGH);
noTone(buzzer);
}
delay(100);
}