system
September 14, 2014, 1:44am
1
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.
Hasta ahora es lo que hice, y no funciona:
{
for (int pin13 = 0; pin13 < 8; pin13++);
digitalWrite(pin13,HIGH);
delay(1000);
digitalWrite(pin13,LOW);
}
Saludos
Prueba
pinMode(13,OUTPUT);
{
for (int i = 0; i < 8; i++);
digitalWrite(pin13,HIGH);
delay(1000);
digitalWrite(pin13,LOW);
}
system
September 14, 2014, 3:26am
3
Gracias nuevamente, max_saeta. Pero no se como salir de la función "For" para continuar programando un segundo led (manualmente, sin función "For"). Dejo el Sketch:
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);
}
Saludos.
Prueba esto.
int pulsador=8;
int leduno=12;
int leddos=13;
int cuenta=0;
void setup()
{
pinMode (pulsador, INPUT);
pinMode (leduno, OUTPUT);
pinMode (leddos, OUTPUT);
digitalWrite(leduno, LOW);
digitalWrite(leddos, LOW);
}
void loop()
{
if (digitalRead(pulsador)==HIGH){ cuenta = 8}
if(cuenta >0){
digitalWrite(leduno,HIGH);
delay (1000);
digitalWrite(leduno,LOW);
delay (1000);
cuenta--;
}
digitalWrite(leddos,HIGH);
delay (1000);
digitalWrite(leddos,LOW);
delay (1000);
}
system
September 14, 2014, 10:33pm
5
Ya lo había solucionado con el Sketch que me pasaste más arriba. Igualmente gracias!!!
max_saeta:
Saludos
Prueba
pinMode(13,OUTPUT);
{
for (int i = 0; i < 8; i++);
digitalWrite(pin13,HIGH);
delay(1000);
digitalWrite(pin13,LOW);
}