Skip to content

Instantly share code, notes, and snippets.

@GuitouFlc
Created August 10, 2018 15:59
Show Gist options
  • Save GuitouFlc/fba95394124c8b2c102aee6cf56435da to your computer and use it in GitHub Desktop.
Save GuitouFlc/fba95394124c8b2c102aee6cf56435da to your computer and use it in GitHub Desktop.
/* sketch Arduino utilisation d'un module hc-sr04
Autheur : Guillaume FLOCH
site web : www.osdclic.fr
tuto : www.memorandum.ovh
membre de : www.goldorhack.org
*/
#define trigPin 5 //Trig
#define echoPin 4 //Echo
#define trigPinV 7 //Trig 2eme
#define echoPinV 9 //Echo 2eme
#define avertisseur 13 //Led
int mindist = 100; //On indique la distance en dessous de laquelle nous souhaitons voir la led s'allumer
int mindistV = 100; //On indique la distance en dessous de laquelle nous souhaitons voir la led s'allumer
void setup() {
// Serial.begin (9600);
pinMode(trigPin, OUTPUT); //On défini Trig comme une sortie
pinMode(echoPin, INPUT); //On défini Echo comme une entrée
pinMode(trigPinV, OUTPUT); //On défini TrigV comme une sortie
pinMode(echoPinV, INPUT); //On défini EchoV comme une entrée
pinMode(avertisseur, OUTPUT); //On défini la led comme une sortie
}
void loop() {
long duree, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10); //Trig envois pendant 10ms
digitalWrite(trigPin, LOW);
long dureV, distanceV;
digitalWrite(trigPinV, LOW);
delayMicroseconds(2);
digitalWrite(trigPinV, HIGH);
delayMicroseconds(10); //Trig envois pendant 10ms
digitalWrite(trigPinV, LOW);
// On calcul le temps pour l'aller retour du signal
duree = pulseIn(echoPin, HIGH);
distance = duree*340/(2*10000);
dureV = pulseIn(echoPinV, HIGH);
distanceV = dureV*340/(2*10000);
// si distance < que "mindist" ou si distanceV < que "mindistV" on allume "avertisseur, mindist étant défini en début de programme
if (distance < mindist || distanceV < mindistV) {
digitalWrite(avertisseur,LOW);
delay (30*1000);
}
else { //sinon on éteind "avertisseur"
digitalWrite(avertisseur,HIGH);
}
delay (100);
}
//Pour le moniteur série
// if ( distance <= 0){
// Serial.println("Hors de portee");
// }
// else {
// Serial.print(distance);
// Serial.print(distanceV);
// Serial.print(" cm ");
// Serial.print(duree);
// Serial.println(" ms");
// }
// delay(100);
//}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment