Stap 2: Code
Array LED pennen maken
byte ledPin [] {4, 5, 6, 7, 8, 9} =;
int delayLed(50); De wachttijd tussen de wijzigingen
int currentLed1 = 0;
int currentLed2 = 5;
int direction1 = 1;
int direction2 =-1;
int sensePin = A0;
unsigned long changeTime;
VOID Setup
{/ / zetten uw setup-code hier, om het eenmalig uit te voeren:
voor (int i = 0, j = 5; ik < 3 & & j > 2; i ++, j--) //set alle pinnen naar uitvoer
{pinMode (ledPin [i], OUTPUT);
pinMode (ledPin [j], OUTPUT); }
changeTime=millis();
}
void loop
{/ / Zet uw belangrijkste code hier, om het herhaaldelijk uitvoeren:
int val=analogRead(sensePin); de waarde van de LDR lezen
if(Val>1000) //setting voorwaarde voor LDR
{if((millis()-changeTime) > delayLed) //if sinds delayLed ms laatste wijziging
{
voor (int i = 0, j = 5; ik < 6 & & j > 2; i ++, j--) //turn voor alle LEDs
{
digitalWrite (ledPin [i], laag);
digitalWrite (ledPin [j], laag);
}
digitalWrite (ledPin [currentLed1], hoge); de huidige LED inschakelen
digitalWrite (ledPin [currentLed2], hoge);
currentLed1 += direction1; _ / / verhogen de waarde richting
currentLed2 += direction2;
Als (currentLed1 == 0) //to de richting veranderen als we het einde bereiken
{
direction1 = 1;
}
if(currentLed2==5)
{
direction2 =-1;
}
if(currentLed1==2)
{
direction1 =-1;
}
if(currentLed2==3)
{
direction2 = 1;
}
changeTime=millis();
}
}
anders
{
for (int i = 0; ik < 6; i ++)
{
digitalWrite (ledPin [i], laag);
}
}
}