A partir de esta sencilla práctica podéis pensar en alguna aplicación y mejora....como por ejemplo:
- un sistema de parking de coches que llegado a un determinado número encienda un luminoso de "completo".
- un sistema que controle la densidad de tráfico (coches por hora) de una autopista o vía.
- un contador de aforo en cines, estadios, etc..
Además, con prácticas sencillas como ésta, nos irán saliendo pequeños problemas técnicos, como el de los rebotes de los pulsadores, que iremos dando solución.
MATERIAL NECESARIO
1 – Tarjeta ARDUINO UNO
1 – Cable USB para Arduino
1 – Placa Protoboard
1 – Pulsador
1 – Resistencia de 10kΩ
1 – Diodo LED
1 – Resistencia de 220Ω
CONEXIONADO EN PLACA PROTOBOARD
ESQUEMA ELÉCTRICO
En la siguiente figura se muestran los circuitos correspondientes a la entrada (PULSADOR) y a la salida (LED), para su mejor comprensión.
CÓDIGO
/* Cuenta los pulsos introducidos por un pulsador y los señaliza con
un LED y muestra la cuenta a través del Monitor Serial */
const int PulsadorPin = 2; //Pin donde se conecta el pulsador
const int LedPin = 10; //Pin donde se conecta el LED
int LecturaBoton = 0; //Variable que contiene el valor del pulsador
int ContPulso=0; //Variable para conteo de numero de pulsos
void setup()
{
Serial.begin(9600);
pinMode(PulsadorPin, INPUT); //configuramos el pin 2 como entrada
pinMode(LedPin, OUTPUT); //configuramos el pin 10 como salida
}
void loop()
{
LecturaBoton = digitalRead(PulsadorPin);
//Lee la entrada del pulsador y lo almacena en la variable
if(LecturaBoton == HIGH) //si se presiona el pulsador
{
digitalWrite(LedPin, HIGH); // enciende el LED
ContPulso++; //incrementa el número de pulsos
Serial.println(ContPulso); //lo muestra por el Monitor Serial
delay(300);
/*este retraso es para evitar los posibles rebotes del pulsador.
El valor tiene que ser no muy pequeño (porque si no contaría más
de una pulsación al pulsar), ni muy grande (porque si no podría
no detectar pulsaciones en esos tiempos de espera)
*/
}
else
{
digitalWrite(LedPin, LOW); // apaga el LED
}
}
No hay comentarios:
Publicar un comentario