Étape 3: Le code
#define
trigPin 12
#define echoPin 13
#define a amené 8
#define led2 7
#define DEL3 6
#define led4 5 / / définir toutes les leds
État int = 1 ;
onOff booléen = false ;
void setup() {}
Serial.Begin (9600) ;
pinMode (trigPin, sortie) ;
pinMode (echoPin, entrée) ;
pinMode (led, sortie) ;
pinMode (led2, sortie) ;
pinMode (DEL3, sortie) ;
pinMode (led4, sortie) ;
pinMode(9,INPUT_PULLUP) ; définir les leds comme sorties
}
seuil d’int = 1000 ;
void loop() {}
Si (digitalRead(9) == HIGH) {//if l’interrupteur se trouve sur
onOff = true ; donner l’onOff variable la valeur true
Serial.println("High") ; vérifier si elle fonctionne en SerialPrint
}
ElseIf (digitalRead(9) == faible) {/ / si l’interrupteur est éteint
onOff = false ; donner la valeur false à la variable onOff
Serial.println("Low") ; vérifier si elle fonctionne en SerialPrint
}
Si (onOff == true) {/ / si onOff est true, les leds s’effectuera par le motionsensor
longue durée, distance ;
digitalWrite (trigPin, basse) ;
delayMicroseconds(2) ;
digitalWrite (trigPin, HIGH) ;
delayMicroseconds(10) ;
digitalWrite (trigPin, basse) ;
durée = pulseIn (echoPin, HIGH) ;
distance = (durée/2) / 29,1 ;
Serial.println(distance) ; Si la distance est de moins de 10 cm, toutes les leds s’allume
Si {(distance < 10)
digitalWrite(led,HIGH) ;
digitalWrite(led2,HIGH) ;
digitalWrite(led3,HIGH) ;
digitalWrite(led4,HIGH) ;
}
ElseIf (distance 15 <) {/ / si la distance est de moins de 15 cm, tous les voyants seront allume
digitalWrite(led,HIGH) ;
digitalWrite(led2,HIGH) ;
digitalWrite(led3,HIGH) ;
digitalWrite(led4,LOW) ;
}
ElseIf (distance < 20) {/ / si la distance est de moins de 20 cm, tous les voyants seront allume
digitalWrite(led,HIGH) ;
digitalWrite(led2,HIGH) ;
digitalWrite(led3,LOW) ;
digitalWrite(led4,LOW) ;
}
ElseIf (distance < 30) {/ / si la distance est de moins de 30 cm, tous les voyants seront allume
digitalWrite(led,HIGH) ;
digitalWrite(led2,LOW) ;
digitalWrite(led3,LOW) ;
digitalWrite(led4,LOW) ;
}
}
ElseIf (onOff == false) {/ / si onOff est false, les LEDS sont tournés à faible
digitalWrite(led,LOW) ;
digitalWrite(led2,LOW) ;
digitalWrite(led3,LOW) ;
digitalWrite(led4,LOW) ;
}
}