Encender LED con boton Arduino

Iniciado por kush20, Diciembre 28, 2018, 05:15:47 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Hola gente, como andan? Me compre para navidad el Arduino UNO, para empezar a probar un poquito de electronica que tenia ganas. Estoy muyy nuevo con el tema de la electronica pero algo fui haciendo. El problema que tengo es que no me enciende el LED integrado (o uno normal) cuando mantengo pulsado un boton. Ahora les muestro el diagrama que es como tengo conectado fisicamente en el Arduino las cosas y el codigo:


Código: php

int switchPin = 2;
int ledPin = 13;

void setup(){
  pinMode(switchPin, INPUT);
  pinMode(ledPin, OUTPUT);
}

void loop(){
  if (digitalRead(switchPin) == HIGH)
  {
      digitalWrite(ledPin, HIGH);
  }
  else{
    digitalWrite(ledPin, LOW);
  }
}


El LED se mantiene siempre apagado, aunque presione o no el boton, lo que me parece raro es que si muevo el cable que esta conectado con la resistencia de 1k (o 10k tmb probe), el led se enciende y se mantiene asi hasta que presiono el boton que se apaga.
Alguna sugerencia? Cualquier cosa puede ser ya que soy nuevo y puedo estar haciendo una burrada jaja.
Desde ya gracias.

la resistencia como esta conectada? pull down o pull up, probaste eso?

Buenas tardes, ¿has probado encender el led sin el switch?

Podría tratarse de un problema en las conexiones o algún "falso contacto" en tu protoboard, te recomiendo que trates de encender el led solo y después pases a ejecutar el código con el switch, no olvides el "delay(5000);" y trata de conectar tu switch a otra entrada al igual que el led.

Aquí te dejo una guía muy básica que hice hace tiempo:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

¡saludos!

He subido tu codigo y armado el circuito, funciona correctamente, mientras el botón este presionado el led del arduino se enciende, verifica el sentido de flujo en el boton a veces eso pasa cuando el boton tiene 4 patitas...


"Es un mundo brutal y peligroso el que hay allá afuera... Pero encontré mi camino. El caos es mi hogar, y me aseguraré de que no escapes de el"...

"Solo se necesita una excusa para cambiar el mundo"

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
la resistencia como esta conectada? pull down o pull up, probaste eso?

Hola, no, en la funcion pinMode no especifique que tipo de resistencia voy a utilizar. Pordira ser el caso? Como se haria? porque todavia no entiendo mucho

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Buenas tardes, ¿has probado encender el led sin el switch?

Podría tratarse de un problema en las conexiones o algún "falso contacto" en tu protoboard, te recomiendo que trates de encender el led solo y después pases a ejecutar el código con el switch, no olvides el "delay(5000);" y trata de conectar tu switch a otra entrada al igual que el led.

Aquí te dejo una guía muy básica que hice hace tiempo:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

¡saludos!

Hola, gracias por la guia, ahora mismo la leo. Si el LED lo probe sin el switch en otro tipo de codigo, haciendo que solo se prenda y apague con delay y funciona bien. Que es eso de delay(5000), que funcion cumpliria esa espera

Diciembre 28, 2018, 07:59:56 PM #6 Ultima modificación: Diciembre 28, 2018, 08:31:23 PM por kush20
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
He subido tu codigo y armado el circuito, funciona correctamente, mientras el botón este presionado el led del arduino se enciende, verifica el sentido de flujo en el boton a veces eso pasa cuando el boton tiene 4 patitas...

Hola, gracias por la respuesta. Estuve pensando eso, pero no se bien como seria el sentido correcto del boton. Me podrias explicar?

Modifico este ultimo mensaje.
Hice este codigo:
Código: php

int buttonPin = 2;
void setup(){
  pinMode(buttonPin, INPUT);
  Serial.begin(9600);
}
void loop(){
  Serial.println(digitalRead(buttonPin));
  delay(1000);
}


Lo que deberia pasar con este codigo, es que en el monitor me salgan 0, y cuando aprieto el boton salgan 1, pero salen aleatoriamente (sin que presione nada) entre 4 o 5 "0" y 4 o 5 "1", como si habria algo que los estaria cambiando, un falso contacto o no se.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
la resistencia como esta conectada? pull down o pull up, probaste eso?

Hola, no, en la funcion pinMode no especifique que tipo de resistencia voy a utilizar. Pordira ser el caso? Como se haria? porque todavia no entiendo mucho

Aqui esta super explicado.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Por otra parte te recomendaria que trates de usar un pulsador primero, luego un led y luego combinar los dos, para qeu tengas un mayor entendimiento y no sea copiar y pegar.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
la resistencia como esta conectada? pull down o pull up, probaste eso?

Hola, no, en la funcion pinMode no especifique que tipo de resistencia voy a utilizar. Pordira ser el caso? Como se haria? porque todavia no entiendo mucho

Aqui esta super explicado.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Por otra parte te recomendaria que trates de usar un pulsador primero, luego un led y luego combinar los dos, para qeu tengas un mayor entendimiento y no sea copiar y pegar.

Hola, si hice eso ahora. Saque el LED y empeze a mirar con el Monitor Serie el dato que me envia el boton, esta en la respuesta de arriba lo que hice. Sabes que podria pasar?