// Segundo código: LED alterna estado a cada pulso no botão
// Se apertar uma vez, o LED acende. Se apertar novamente, o LED apaga.
const int botao2 = 3; // Define o pino do botão
bool estadoLed = false; // Variável que guarda o estado do LED
void setup() {
pinMode(botao2, INPUT_PULLUP); // Configura o botão como entrada com pull-up interno
pinMode(led, OUTPUT); // Configura o LED como saída
}
void loop() {
static bool ultimoEstadoBotao = HIGH; // Variável para armazenar o estado anterior do botão
bool estadoBotao = digitalRead(botao2);
if (estadoBotao == LOW && ultimoEstadoBotao == HIGH) { // Detecta o pulso no botão
estadoLed = !estadoLed; // Alterna o estado do LED
digitalWrite(led, estadoLed);
delay(200); // Pequena pausa para evitar múltiplas leituras
}
ultimoEstadoBotao = estadoBotao;
}