Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. #define luzVerde1 2
  2. #define luzAmarela1 3
  3. #define luzVermelha1 4
  4.  
  5. #define luzVerde2 5
  6. #define luzAmarela2 6
  7. #define luzVermelha2 7
  8.  
  9. #define sensor1 8
  10. #define sensor2 9
  11.  
  12. #define pVerde1 10
  13. #define pVermelha1 11
  14. #define pVerde2 12
  15. #define pVermelha2 13
  16.  
  17. bool ativo = true;
  18. int tempoled = 3000;
  19. int tempoespera = 5000;
  20.  
  21. void setup() {
  22. Serial.begin(9600);
  23.  
  24. // set the digital pin as output:
  25. pinMode(luzVerde1, OUTPUT);
  26. pinMode(luzAmarela1, OUTPUT);
  27. pinMode(luzVermelha1, OUTPUT);
  28. pinMode(luzVerde2, OUTPUT);
  29. pinMode(luzAmarela2, OUTPUT);
  30. pinMode(luzVermelha2, OUTPUT);
  31. pinMode(sensor1, OUTPUT);
  32. pinMode(sensor2, OUTPUT);
  33. pinMode(pVerde1, OUTPUT);
  34. pinMode(pVermelha1, OUTPUT);
  35. pinMode(pVerde2, OUTPUT);
  36. pinMode(pVermelha2, OUTPUT);
  37.  
  38.  
  39. // Leds apagados incialmente
  40. digitalWrite(luzVerde1, HIGH);
  41. digitalWrite(luzAmarela1, HIGH);
  42. digitalWrite(luzVermelha1, HIGH);
  43. digitalWrite(luzVerde2, HIGH);
  44. digitalWrite(luzAmarela2, HIGH);
  45. digitalWrite(luzVermelha2, HIGH);
  46. digitalWrite(pVerde1, HIGH);
  47. digitalWrite(pVermelha1, HIGH);
  48. digitalWrite(pVerde2, HIGH);
  49. digitalWrite(pVermelha2, HIGH);
  50.  
  51.  
  52. // Verde e vermelha acesa
  53. digitalWrite(luzVerde1, LOW);
  54. digitalWrite(luzVermelha2, LOW);
  55. digitalWrite(pVermelha1, LOW);
  56. digitalWrite(pVerde2, LOW);
  57.  
  58.  
  59. }
  60.  
  61. void loop() {
  62. if (ativo)
  63. {
  64. int valor2 = digitalRead(sensor2);
  65.  
  66. if (valor2 == HIGH)
  67. {
  68. acenderSemaforo2();
  69. ativo = false;
  70. }
  71. }
  72. else
  73. {
  74. int valor1 = digitalRead(sensor1);
  75.  
  76. if (valor1 == HIGH)
  77. {
  78. acenderSemaforo1();
  79. ativo = true;
  80. }
  81. }
  82. }
  83.  
  84. void acenderSemaforo2()
  85. {
  86. delay(tempoespera);
  87. digitalWrite(luzVerde1, HIGH);
  88. digitalWrite(luzAmarela1, LOW);
  89. digitalWrite(pVerde2, HIGH);
  90. digitalWrite(pVermelha2, LOW);
  91. delay(tempoled);
  92. digitalWrite(luzAmarela1, HIGH);
  93. digitalWrite(luzVermelha1, LOW);
  94. digitalWrite(luzVermelha2, HIGH);
  95. digitalWrite(luzVerde2, LOW);
  96. digitalWrite(pVermelha1, HIGH);
  97. digitalWrite(pVerde1, LOW);
  98. }
  99.  
  100.  
  101. void acenderSemaforo1()
  102. {
  103. delay(tempoespera);
  104. digitalWrite(luzVerde2, HIGH);
  105. digitalWrite(luzAmarela2, LOW);
  106. digitalWrite(pVerde1, HIGH);
  107. digitalWrite(pVermelha1, LOW);
  108. delay(tempoled);
  109. digitalWrite(luzAmarela2, HIGH);
  110. digitalWrite(luzVermelha2, LOW);
  111. digitalWrite(luzVermelha1, HIGH);
  112. digitalWrite(luzVerde1, LOW);
  113. digitalWrite(pVermelha2, HIGH);
  114. digitalWrite(pVerde2, LOW);
  115.  
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement