Advertisement
Guest User

Untitled

a guest
Feb 27th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.61 KB | None | 0 0
  1. /* G.E.A.T */
  2. #include <LiquidCrystal.h> //inclusao da biblioteca do Cristal Liquido
  3. #define luz 7 //define o pino 7 como luz de fundo
  4. LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //pinos do cristal liquido conectado ao arduino
  5. const int buttonPin = 10; //pino do botao 1
  6. const int buttonPin1 = 8; //pino do botao 2
  7. int buttonPushCounter = 0; //contador do pushbotton
  8. int buttonState7 = 0; //variavel de estado do 1º botao
  9. int buttonState8 = 0; //vairiavel de estado do 2º botao
  10. int lastButtonState = 0; //variavel do último estado do botao
  11. int redled = 9; //pino do led
  12. int buzzer = 13; // pino do buzzer
  13. void setup() {
  14. pinMode(luz, OUTPUT); //luz como saida
  15. pinMode(buttonPin, INPUT); //botao como entrada
  16. pinMode(buttonPin1, INPUT);
  17. pinMode(redled, OUTPUT); //led como saida
  18. pinMode(buzzer,OUTPUT); //buzzer como saida
  19. digitalWrite(luz, HIGH); //luz de fundo ligado
  20. lcd.begin(16,2); //display de 16X2
  21. lcd.setCursor(0,0); /*local de escrita
  22. da palavra tempo*/
  23. lcd.print("Tempo:");
  24. }
  25. void loop() {
  26. buttonState7 = digitalRead(buttonPin); //verificando o estado o 1º botao
  27. if (buttonState7 != lastButtonState) { //se o estado for diferente o botao e setado
  28. if (buttonState7 == HIGH)
  29. {
  30. buttonPushCounter+=10; //Ao setar o botao é incrementado 10segundo ao contador
  31. delay(100); //o uso desse delay é para um controle de incremento
  32. lcd.setCursor(7,1); //coordenadas onde aparecerá o contador
  33. lcd.print(buttonPushCounter); //escrita do valor ao ser precionado o botão
  34. }
  35. delay(100);
  36. }
  37. buttonState8 = digitalRead(buttonPin1); //verificando o estado o 2º botao
  38. if(buttonState8 == HIGH){ //se o estado for diferente o botao e setado
  39. while(buttonPushCounter != 0){
  40. buttonPushCounter = buttonPushCounter - 1; //contagem regressiva
  41. digitalWrite(redled, HIGH); //brilho do led
  42. delay(500);
  43. digitalWrite(redled, LOW);
  44. delay(500);
  45. lcd.setCursor(0,0); //coordenadas da escrita detonação em:
  46. lcd.print("Detonacao em:");
  47. lcd.setCursor(7,1); //coordenadas da escrita da contagem regressiva
  48. lcd.print(buttonPushCounter);
  49. if (buttonPushCounter <= 10) /* retirada do espaços em branco*/
  50. {
  51. lcd.setCursor(8,1);
  52. lcd.print(" ");
  53. }
  54. if (buttonPushCounter <= 100)
  55. {
  56. lcd.setCursor(9,1);
  57. lcd.print(" ");
  58. }
  59. if (buttonPushCounter <= 1000)
  60. {
  61. lcd.setCursor(10,1);
  62. lcd.print(" ");
  63. }
  64. if (buttonPushCounter <= 10000)
  65. {
  66. lcd.setCursor(11,1);
  67. lcd.print(" ");
  68. }
  69. }
  70. if(buttonPushCounter == 0){ //se o a contagem chegar a zero a escrita Terroristas Vencerão ira aparacer
  71. lcd.setCursor(0,0);
  72. lcd.print(" ");
  73. lcd.setCursor(1,0);
  74. lcd.print(" ");
  75. lcd.setCursor(0,1);
  76. lcd.print(" ");
  77. lcd.setCursor(2,0);
  78. lcd.print("Terroristas ");
  79. lcd.setCursor(3,1);
  80. lcd.print("Vencerao");
  81. delay(1000);
  82. for(int buttonPushCounter = 0;buttonPushCounter < 10 ; buttonPushCounter++){ //laço para apito do buzzer e efeito no display
  83. lcd.noDisplay();
  84. delay(250);
  85. lcd.display();
  86. delay(250);
  87. tone(buzzer,1500);
  88. delay(500);
  89. noTone(buzzer);
  90. delay(500);
  91. }
  92. }
  93. }
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement