Está en la página 1de 2

CODIGO 4.

6
const int B=2; //boton conectado al pin 2
const int TA=10;

int cuenta=0; //guarda el numero de veces que el botón ha


sido presionado
int estadoboton;
int estadoBotonAnterior;

/* Función Antirrebote*/
boolean antirrebote(int pin){
int contador=0;
boolean estado; //guarda el estado del botón
boolean estadoAnterior; //guarda el último estado del botón
do{
estado=digitalRead (pin);
if(estado!=estadoAnterior){ //comparamos el estado actual
contador=0; //reiniciamos el contador
estadoAnterior=estado;
}
else{
contador=contador+1; //aumentamos el contador en 1
}
delay(1);
}
while(contador<TA);
return estado;
}
void setup(){
Serial.begin(9600); //iniciamos la comucion serial
pinMode (B, INPUT); //declaramos el botón como entrada
}
void loop(){
estadoboton =digitalRead (B); //leemos el estado del botón
if(estadoboton!=estadoBotonAnterior){ //si hay cambio con
respecto
if(antirrebote (B)){ //al estado checamos si esta presionado y
cuenta ++; //si lo esta aumentamos la cuenta
Serial.println(cuenta);
}
}
estadoBotonAnterior=estadoboton; //guardamos el estado del
botón
}

También podría gustarte