Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define led 13 // Define port 13 como led
- #define botton 7 // Define port 7 como botton
- byte FlagLed = 0; // Variavel para controle
- byte LedSt = 0; // Status do led
- unsigned long Tempo = 0; // Variavel para tempo
- //----------------------------------
- void setup()
- {
- pinMode(led, OUTPUT); // Define port led como saída
- pinMode(botton, INPUT_PULLUP); // Define port botton com entrada com pullup
- digitalWrite(led, LOW); // inicia com Led apagado
- Tempo = millis(); // Estabelece tempo inicial
- }
- //----------------------------------
- void loop()
- {
- Tempo = millis(); // Restaura valor de tempo
- if (digitalRead(botton) == LOW) // Se botton foi apertado
- {
- delay(10); // delay para evitar bouncing
- if (digitalRead(botton) == LOW) // Se botton continua apertado
- {
- FlagLed = 1; // Indica botton apertado
- }
- }
- if (digitalRead(botton) == HIGH) // Se botão esta solto
- {
- while (FlagLed == 1) // Se botton foi apertados
- {
- if (millis() - Tempo > 3000) // Se passaram 3 minutos 180.000ms
- //if (millis() - Tempo > 2000) // Se passaram 2 segundos (teste)
- {
- LedSt = !digitalRead(led); // le status do led invertido em Ledst
- digitalWrite(led, LedSt); // Acende ou apaga Led
- Tempo = millis(); // Restaura valor de tempo
- FlagLed = 0; // Desliga indicador de botton apertado
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement