Stap 3: De code
#define
trigPin 12
#define echoPin 13
#define leidde 8
#define led2 7
#define led3 6
#define led4 5 / / alle de leds definiëren
int staat = 1;
Booleaanse onOff = false;
VOID Setup {}
Serial.begin (9600);
pinMode (trigPin, OUTPUT);
pinMode (echoPin, INPUT);
pinMode led (, uitvoer);
pinMode (led2, OUTPUT);
pinMode (led3, OUTPUT);
pinMode (led4, OUTPUT);
pinMode(9,INPUT_PULLUP); definiëren van de LED's zoals uitgangen
}
int drempel = 1000;
void loop {}
Als (digitalRead(9) == HIGH) {//if de schakelaar brandt
onOff = true; de variabele onOff de waarde true geven
Serial.println("High"); controleren of het werkt in SerialPrint
}
else if (digitalRead(9) == LOW) {/ / als de schakelaar uitstaat
onOff = false; Geef de variabele onOff de waarde false
Serial.println("low"); controleren of het werkt in SerialPrint
}
Als (onOff == true) {/ / als onOff klopt, de leds zal geschieden door de motionsensor
lange duur, afstand;
digitalWrite (trigPin, laag);
delayMicroseconds(2);
digitalWrite (trigPin, hoge);
delayMicroseconds(10);
digitalWrite (trigPin, laag);
duur = pulseIn (echoPin, hoge);
afstand = (duur/2) / 29.1;
Serial.println(distance); Als de afstand is dichter dan 10 cm, zal alle de leds schitteren
Als (afstand < 10) {}
digitalWrite(led,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,HIGH);
digitalWrite(led4,HIGH);
}
anders als (afstand < 15) {/ / als afstand dichter dan 15 cm, alle de leds zal schitteren
digitalWrite(led,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
anders als (afstand < 20) {/ / als afstand dichter dan 20 cm, alle de leds zal schitteren
digitalWrite(led,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
anders als (afstand < 30) {/ / als afstand dichter dan 30 cm, alle de leds zal schitteren
digitalWrite(led,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
anders als (onOff == false) {/ / onOff is false, de LEDS laag worden omgezet
digitalWrite(led,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}