El pulsador es un componente que cierra un circuito cuando lo
presionas. El ejemplo enciende y apaga un LED en función del estado de
un botón o pulsador.
Conectamos tres cables a la Arduino. El primero va de una patilla del pulsador atravesando una resistencia pull-up (2.2
KOhms)
y acabando en la salida de 5V de la Arduino. De la segunda patilla del
pulsador conectamos un cable a masa (gnd). El tercer cable conecta con
la patilla de la arduino (el pin 7 en nuestro ejemplo) que recibe el
estado del pulsador.
Cuando el circuito está abierto (sin pulsar) no hay conexión interna
entre las dos patillas del pulsador, por lo tanto el pin del ejemplo
(pin 7) se encuentra conectado a 5 voltios (a traves de la resistencia
pull-up) y recibe estado alto o HIGH. Cuando pulsamos el botón se
conectan internamente las patillas del pulsador conectando el pin del
ejemplo a masa (gnd) por lo que recibe estado bajo o LOW. (El pin del
ejemplo sigue conectado a 5 voltios, pero la resistencia provoca que
esté mas "cercano" a masa).
Código:
|
/* Lectura digital basica
* ----------------------
* Enciende y apaga un led conectado al pin digital 13
* cuando se presiona el pulsador conectado al pin 7
* Ilustra el concepto de Active-Low (activo en estado bajo)
* que consiste en conectar un botón usando una resistencia
* de pull-up (entre 1 y 10K)
*
* Basic Digital Read
* ------------------
* turns on and off a light emitting diode(LED) connected to digital
* pin 13, when pressing a pushbutton attached to pin 7. It illustrates the
* concept of Active-Low, which consists in connecting buttons using a
* 1K to 10K pull-up resistor.
*
* Created 1 December 2005
* copyleft 2005 DojoDave <http://www.0j0.org>
* http://arduino.berlios.de
*
*/
int ledPin = 13; // seleccionamos pin para el LED
int inPin = 7; // seleccionamos pin para el pulsador
int val = 0; // variable para leer estado del pulsador
void setup() {
pinMode(ledPin, OUTPUT); // configuramos el LED como SALIDA
pinMode(inPin, INPUT); // configuramos el pulsador como ENTRADA
}
void loop(){
val = digitalRead(inPin); // leemos el estado del pulsador
if (val == HIGH) { // verificamos si el valor es alto (HIGH)
// que corresponde al boton sin pulsar
digitalWrite(ledPin, LOW); // Apagamos el LED
} else {
digitalWrite(ledPin, HIGH); // Encendemos el LED
}
}
|
Personalmente ami me gusta mas de esta otro forma, que al pulsar el pulsador se encienda el led:
Código:
|
int ledPin = 13; // seleccionamos pin para el LED
int inPin = 7; // seleccionamos pin para el pulsador
int val = 0; // variable para leer estado del pulsador
void setup() {
pinMode(ledPin, OUTPUT); // configuramos el LED como SALIDA
pinMode(inPin, INPUT); // configuramos el pulsador como ENTRADA
}
void loop(){
val = digitalRead(inPin); // leemos el estado del pulsador
if (val == HIGH) { // verificamos si el valor es alto (HIGH)
// que corresponde al boton sin pulsar
digitalWrite(ledPin, HIGH); // Apagamos el LED
} else {
digitalWrite(ledPin, LOW); // Encendemos el LED
}
}
|
Fuente:
http://arduino.cc/es/Tutorial/Pushbutton
No hay comentarios:
Publicar un comentario