Paso 2: código
Crear array de pines del LED
ledPin de bytes [] = {4, 5, 6, 7, 8, 9};
int delayLed(50); Retraso entre los cambios
int currentLed1 = 0;
int currentLed2 = 5;
direction1 int = 1;
int direction2 =-1;
int sensePin = A0;
changeTime largo sin firmar;
void setup()
{/ / Pon tu código de instalación, para ejecutar una vez:
para (int i = 0, j = 5; i < 3 & & j > 2; i ++, j--) //set todos los pernos a la salida
{pinMode (ledPin [i], salida);
pinMode (ledPin [j], salida); }
changeTime=millis();
}
void loop()
{/ / Pon tu código principal, para ejecutar varias veces:
int val=analogRead(sensePin); Lea el valor de la LDR
if(Val>1000) //setting condición para LDR
{if((millis()-changeTime) > delayLed) //if ha sido delayLed ms desde el último cambio
{
para (int i = 0, j = 5; i < 6 & & j > 2; i ++, j--) //turn de todos los LEDs
{
digitalWrite (ledPin [i], LOW);
digitalWrite (ledPin [j], LOW);
}
digitalWrite (ledPin [currentLed1], HIGH); enciende el LED actual
digitalWrite (ledPin [currentLed2], HIGH);
currentLed1 += direction1; incrementar el valor de la dirección
currentLed2 += direction2;
Si (currentLed1 == 0) //to cambiar la dirección si se llega al final
{
direction1 = 1;
}
if(currentLed2==5)
{
direction2 =-1;
}
if(currentLed1==2)
{
direction1 =-1;
}
if(currentLed2==3)
{
direction2 = 1;
}
changeTime=millis();
}
}
otra cosa
{
para (int i = 0; i < 6; i ++)
{
digitalWrite (ledPin [i], LOW);
}
}
}