2. ¿Qué es un botón?
● Conectan dos puntos de un circuito cuando
son presionados.
● Tienen dos estados posibles y cambia
cuando es presionado (push button).
● No mantiene el estado a diferencia de los
“interruptores” (switch).
6. Cambio de estado al pulsar el botón
const int buttonPin = 2;
const int ledPin = 3;
boolean buttonState = LOW;
boolean currentState = LOW;
boolean ledState = false;
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop(){
buttonState = digitalRead(buttonPin);
if ((buttonState == HIGH) && (currentState == false)) {
ledState = !ledState;
} else {
currentState = buttonState;
}
digitalWrite(ledPin, ledState);
}
7. Eliminando el rebote
El rebote es un problema común en switches, botones y
relés. Durante un periodo de tiempo muy breve el contacto
mecánico rebota antes de establecer un contacto firme.
8. Eliminando el rebote
Por hardware: Por software:
boolean keypress(int Pin) {
boolean inicial = digitalRead(Pin);
delay(10);
boolean valor = digitalRead(Pin);
if ((inicial == HIGH) && (valor == LOW))
{
return(true);
} else {
return(false);
}
}