Advertisement
Guest User

Untitled

a guest
Nov 20th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. #define pinSom 7
  2. #define pinRele1 2
  3. #define pinRele2 3
  4. #define tempoMaximoDeUmaPalma 150 //milisegundo
  5. #define tempoMaximoEntrePalmas 500 //milisegundo
  6.  
  7. int contaPalmas = 0;
  8. long tempoEspera = 0;
  9. long tempoEsperaEntrePalmas = 0;
  10.  
  11.  
  12. void setup() {
  13. pinMode(pinSom, INPUT);
  14. pinMode(pinRele1, OUTPUT);
  15. pinMode(pinRele2, OUTPUT);
  16. }
  17.  
  18.  
  19. void loop() {
  20. int sensorSom = digitalRead(pinSom);
  21.  
  22. if (sensorSom == LOW) {
  23.  
  24. if (tempoEspera == 0) {
  25. tempoEspera = tempoEsperaEntrePalmas = millis();
  26. contaPalmas++;
  27. } else if ((millis() - tempoEspera) >= tempoMaximoDeUmaPalma)
  28. tempoEspera = 0;
  29. }
  30.  
  31. if ( ( contaPalmas != 0) && ((millis() - tempoEsperaEntrePalmas)
  32. executarAcao();
  33. contaPalmas = 0;
  34. tempoEsperaEntrePalmas = millis();
  35. }
  36.  
  37. }
  38.  
  39.  
  40. void executarAcao()
  41. {
  42. switch (contapalmas) {
  43. case 2:
  44. digitalWrite(pinRele1, !digitalRead(pinRele1));
  45. break;
  46. case 3:
  47. digitalWrite(pinRele2, !digitalRead(pinRele2));
  48. break
  49. }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement