Función (FOR). Para repetir 8 veces el enc. de 1 led [SOLUCIONADO]

Quiero que el led encienda 8 veces seguidas y luego continuar con la rutina del programa. No quisiera tener que escribir HIGH delay LOW, etc etc 8 veces.

Hola walmar para hacer el uso del bucle for debes hacer el siguiente codigo:

int ledpin= 13;

void setup()
{
  pinMode(ledpin, OUTPUT);

for (int i=0; i <= 8; i++)
      {
        delay(500);
        digitalWrite(ledpin, HIGH);
        delay(500);
        digitalWrite(ledpin, LOW);
      }
}


void loop()
{

}

En este ejemplo lo va hacer cuando inicia el programa pero si quiere que esto lo haga cuando por ejemplo una entrada es alta el ejemplo seria

int ledpin= 13;
int entrada= 10;
void setup()
{
  pinMode(ledpin, OUTPUT);
digitalWrite(ledpin, LOW);

}


void loop()
{
if (digitalRead(entrada) == HIGH ) { // read two switches 
for (int i=0; i <= 7; i++)
      {
        delay(500);
        digitalWrite(ledpin, HIGH);
        delay(500);
        digitalWrite(ledpin, LOW);
      }
}
else
{
digitalWrite(ledpin,LOW);
}
}

Para modificar el destello solo con cambiar los valores a delay

Si lo queres aplicar en algo especial y no podes, avisa...

Espero te sirva...

Un abrazo!!!

Protheo, me sirvió, pero como hago para salir del "for" y seguir escribiendo el programa? Ejemplo: Tengo 2 leds conectados, el primero lo hago encender 8 veces con la funcion "For" pero luego quiero continuar con el segundo led encendiéndolo con DigitalWrite HIGH delay DigitalWrite LOW, pero me precede la función "For" del primer led. O sea, debería terminar la función "For" y luego seguir programando normalmente.

int pulsador=8;
int leduno=12;
int leddos=13;

void setup()
{
pinMode (pulsador, INPUT);
pinMode (leduno, OUTPUT);
pinMode (leddos, OUTPUT);
digitalWrite(leduno, LOW);
digitalWrite(leddos, LOW);

}

void loop()
{
if (digitalRead(pulsador)==HIGH)

for (int i=0; i <= 7; i++)

digitalWrite(leduno,HIGH);
delay (1000);
{
digitalWrite(leduno,LOW);
delay (1000);
}

}

{
digitalWrite(leddos,HIGH);
delay (1000);
digitalWrite(leddos,LOW);
delay (1000);

}

Hola walmar el tema ya fue respondido en el nuevo tema, por favos cierra este como solucionado...

Un abrazo!!

Protheo, ya indique [SOLUCIONADO].
Gracias!