For() solo devuelve el primer ciclo

En el sketch adjunto, el for() solo devuelve los datos correspondientes al primer ciclo, incluso si agrego un delay(1000) en su interior. Está compilado, no hay mensaje de error.

<
int contador = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("Tiempo Pulsos");
Serial.println("---------------");
pinMode(2, INPUT);
for (int contador = 0; contador < 6; contador++); {
Serial.println(contador);
if (digitalRead(2) == LOW) {
Serial.println("Encendido");
}
else {
Serial.println("Apagado");
}
Serial.println("");
}
}
void loop() {
}

Gracias por vuestra ayuda!

Drop the semicolon here:

for (int contador = 0; contador < 6; contador++); {
1 Like

As per @wildbill ... remove the ;

Also... be careful as you have declared contador twice. Once as a global variable, and once in the for loop.

1 Like

Hola

El problema es este ";" después del ")" del "for":
for (int contador = 0; contador < 6; contador++); << ---.
Quítelo y funcionará correctamente:
for (int contador = 0; contador < 6; contador++)

RV mineirin

1 Like

Wildbill, Red_car, Ruilviana:

Thak you all, gracias!

Moderador:
Por favor, lee las Normas del foro y edita tu código/error usando etiquetas de código.
Ve a edición, luego selecciona todo el código que has publicado, lo cortas y click en </>