int PinoLED = 13; // variável para o pino digital 13
int PinoBotao = 12; // variável para o pino digital 12
int estadoBotao = 0; //variavel que le o estado atual do botao conectado em 12
int ultimoEstadoBotao = 0; //variavel que guarda o ultimo estado do botao conectado em 12
int controlaEstadoBotao = 0; //variavel que controla o estado do botao conectado em 12
void setup() {
// put your setup code here, to run once:
pinMode(PinoLED, OUTPUT);// conecta o pino do LED como OUTPUT
pinMode(PinoBotao, INPUT); //pino 12, onde esta ligado o pushbutton
}
void loop() {
// put your main code here, to run repeatedly:
//Verifica e controla o estado do botao conectado em 12
//Verifica e controla o estado do botao conectado em 12
estadoBotao = digitalRead(PinoBotao);
if (ultimoEstadoBotao == 0 && estadoBotao == 1) {
if (controlaEstadoBotao == 0) {
controlaEstadoBotao = 1;
} else {
controlaEstadoBotao = 0;
}
}
ultimoEstadoBotao = estadoBotao;
delay(50); //espera para evitar efeito bouncing
if (controlaEstadoBotao == 0) {
digitalWrite(PinoLED, LOW);
} else {
digitalWrite(PinoLED, HIGH);
}
}