Advertisement
RuiViana

Counte_2_aperto_2Seg

Dec 8th, 2015
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.56 KB | None | 0 0
  1. byte led = 3; // Saida digital do pino 3 para o led
  2. int botao = 8; // Entrada do pino do botao pino 8
  3. int estadoBotao = 0;
  4. byte Indicador = 0;
  5. unsigned int count = 0;
  6. //--------------------------------------------------
  7. void setup()
  8. {
  9. Serial.begin(9600);
  10. pinMode (led, OUTPUT);
  11. pinMode (botao, INPUT_PULLUP);
  12. }
  13. //--------------------------------------------------
  14. void loop()
  15. {
  16. while(count <3000)
  17. {
  18. Serial.println(count);
  19. if(digitalRead (botao) == LOW) // Verifica se o botao foi pressionado
  20. {
  21. while(digitalRead (botao) == LOW){} // Confirma se o botao continua pressionado
  22. delay(80); // Tempo para evitar debouncing
  23. if (Indicador == 2) // Testa se o batao foi apertado uma vez se já foi, faça
  24. {
  25. for (byte i = 0; i<4; i++) // Faça isso 4 vezes
  26. {
  27. Serial.println(Indicador);
  28. digitalWrite(led, HIGH); // Atribui nível lógico alto ao pino do LED, acendendo-o
  29. delay(500); // Espera 500 milissegundos (1/2 segundo)
  30. digitalWrite(led, LOW); // Atribui nível lógico baixo ao pino do LED, apagando-o
  31. delay(500); // Espera 3000 milissegundos (1 segundos)
  32. Indicador = 0; // Zera indicador de batao apertado uma vez
  33. count = 0;
  34. }
  35. }
  36. else Indicador++; // Se não foi apertado uma vez, indica que é a primeira ve
  37. }
  38. count++;
  39. delay(1);
  40. }
  41. count = 0;
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement