Baile HIGH LOW

Hola. Estoy comenzando con esto del arduino y hoy me ha surgido un problema que no llego a comprender muy bien. Estoy intentando medir pulsos (aún no sé muy bien como pero tengo en mente usar las interrupciones) pero he detectado que si yo conecto un cable (sin más, es decir, sin conectar el otro extremo a nada más) a un pin digital del arduino y yo subo un código como el siguiente:

void setup(){

pinMode (22, INPUT);
Serial.begin (9600);

}

void loop (){

if ( digitalRead (22) == HIGH ) {Serial.println ("HIGH!");}
else {Serial.println("LOW");}

}

El monitor me empieza a sacar todo el rato mensajes de LOW y HIGH. No llego a comprender esto muy bien, puesto que, según mi lógica, si no tengo nada conectado, debería mantenerse en low todo el rato. Si desconecto el cable, entonces se mantiene en LOW todo el rato.

¿Estoy haciendo algo mal o sencillamente no entiendo algo?

Muchas gracias de antemano. Un saludo.

Básicamente, estás metiendo ruido, a través del cable. Un cable suelto, actúa de antena y mete ruido ambiental.

carmeloco:
Básicamente, estás metiendo ruido, a través del cable. Un cable suelto, actúa de antena y mete ruido ambiental.

En primer lugar, gracias por la rápida respuesta. Sin embargo no entiendo muy bien esto. Es decir, yo enchufo el cable a la breadboard para medir pulsos. Un código muy sencillo podría ser para medir pulsos: cada vez que esté en HIGH suma 1 a una variable que uso como contador. Si el cable envía señales por ruido ambiental, ¿como me puedo fiar de que cada vez que sume 1 a la variable sea por un pulso y no por el ruido?

En el momento que lo conectes a la fuente de los pulsos que deseas contar, se acaba el problema. Ese ruido que es capaz de modificarte los estados lógicos es solo cuando no lo tienes conectado.

Gracias por la ayuda. Acabo de abrir otro post para continuar con esto que tengo pendiente :wink:

Lee con atención mi comentario, en especial, la parte que pone Un cable suelto. En el momento en que lo conectas a algo, ya no es un cable suelto. :slight_smile: