Contar las pulsaciones del botón
Parte de la sección Entradas del Journey de Arduino de Coddy. Lección 5 de 22.
El flanco de la lección anterior puede activar cualquier cosa que deba ocurrir una vez por pulsación. Aquí suma uno a un contador, con ++ de Contar hacia arriba:
int presses = 0;
void loop() {
int reading = digitalRead(2);
if (reading == LOW && lastReading == HIGH) {
presses++;
Serial.println(presses);
}
lastReading = reading;
}presses está antes de setup(), como lastReading, así que conserva su valor entre ejecuciones de loop().
La impresión está dentro de if, así que aparece un número solo cuando cambia el recuento: 1, 2, 3. Fuera de if, imprimiría el mismo recuento miles de veces por segundo.
Desafío
FácilEl botón está en el pin 2 (INPUT_PULLUP). Cuenta las pulsaciones:
- guarda el recuento en
presses, declarado antes desetup() - cuando se presione el botón, suma uno e imprime el recuento
Pulsa Run, pulsa el botón varias veces y observa el monitor Serial; después, pulsa Check.
Pruébalo tú mismo
const int buttonPin = 2;
int lastReading = HIGH;
void setup() {
pinMode(buttonPin, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int reading = digitalRead(buttonPin);
// cuando se presione el botón, cuenta la pulsación e imprime el total
lastReading = reading;
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Entradas
1Botones
Imprimir el estado de un botónResistencia pull-downLa resistencia pull-up internaAlternar con cada pulsaciónContar las pulsaciones del botónEliminar el rebote de un botónDos botones a la vezPractica por tu cuenta: Playground de Arduino