En este tutorial vamos a aprender a controlar un diodo LED mediante la acción de un pulsador.
La idea es que, cuando actuémos sobre el pulsador, el LED se encienda o se apague, dependiendo de como hayamos escrito el programa. Nosotros, lo vamos a hacer de dos modos distintos, uno en el que el LED al accionar el pulsador, se encienda; y otro, en el que pase lo contrario, que cuando pulsemos, el LED se apague.
Lo que vamos a necesitar.
- Arduino.
- LED.
- Pulsador.
- Resistencia 200.
- Resistencia 100 K.
- Cable.
- Cable USB.
En primer lugar, cabe decir que para ambos tutoriales, el montaje es el mismo.
Hoy, vamos a ir un poco más allá en el montaje, vamos a ver el esquema.
Ahora, al ver el esquema, nos puede surgir una duda, ¿para qué es la resistencia del pulsador?
Esa resistencia, es una resistencia pull-down. De momento, con saber que es para obtener un estado alto cuando accionemos el pulsador.
Si no pusieramos la resistencia, haríamos que hubiera un cortocircuito entre el pin de 5V y el pin 3.
De todas formas, en breve, explicaremos que son las resistencias pull-down y pull-up.
El código, en ambos casos es igual, pero hay que cambiar un par de parámetros para que nos funcione a la inversa.
Ahora, vamos con el que hace que el LED se encienda cuando accionamos el pulsador.
int LED = 2; //Establecemos el pin 2 para el LED//
int puls = 3; //Establecemos el pin 3 para el pulsador//
int val;
void setup(){
pinMode(LED, OUTPUT); //Establecemos el pin 2 como salida//
pinMode(puls, INPUT); //Establecemos el pin 3 como entrada//
}
void loop(){
val = digitalRead(puls); //Guardamos en la variable val el estado del pulsador//
if(val == LOW){ //Si el pulsador esta desactivado//
digitalWrite(LED, LOW); //El LED estara apagado//
}
if(val == HIGH){ //Si el pulsador esta activado//
digitalWrite(LED, HIGH); //El LED estara encendido//
}
}
Si nos fijamos, en las tres primeras líneas de comando, vemos algo que pone val . Eso, es una variable.
Si lo hemos hecho todo bien, tiene que suceder algo así.
Ahora, vamos con el otro caso. En esta situación, vamos a hacer que el LED se apague cuando accionemos el pulsador.
int LED = 2; //Establecemos el pin 2 para el LED//
int puls = 3; //Establecemos el pin 3 para el pulsador//
int val;
void setup(){
pinMode(LED, OUTPUT); //Establecemos el pin 2 como salida//
pinMode(puls, INPUT); //Establecemos el pin 3 como entrada//
}
void loop(){
val = digitalRead(puls); //Guardamos en la variable val el estado del pulsador//
if(val == LOW){ //Si el pulsador esta desactivado//
digitalWrite(LED, HIGH); //El LED estara encendido//
}
if(val == HIGH){ //Si el pulsador esta activado//
digitalWrite(LED, LOW); //El LED estara apagado//
}
}
Como podemos apreciar, hemos variado el estado en el que se encuentra el LED cuando el pulsador está accionado o cuando no lo está.
No hay comentarios:
Publicar un comentario