Advertisement
Guest User

Untitled

a guest
Nov 9th, 2014
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.29 KB | None | 0 0
  1. unsigned long int temp1=0; // momento em que o temporizador 1 foi disparado
  2. unsigned long int temp2=0; // momento em que o temporizador 2 foi disparado
  3. unsigned long int interval_temp1=100; // tempo do temporizador 1 em milisegundos
  4. unsigned long int interval_temp2=500; // tempo do temporizador 2 em milisegundos
  5. boolean temp1_on=false; // estado do temporizador 1 (ligado=true ,desligado=false)
  6. boolean temp2_on=false; // estado do temporizador 2 (ligado=true ,desligado=false)
  7. boolean led1_state=false; // estado do led1
  8. boolean led2_state=false; // estado do led2
  9. boolean led3_state=false; // estado do led3
  10. boolean led4_state=false; // estado do led4
  11. boolean led5_state=false; // estado do led5
  12. boolean led6_state=false; // estado do led6
  13. boolean led7_state=false; // estado do led7
  14. boolean led8_state=false; // estado do led8
  15. int button_liga1 = 2; // botão liga motor 1
  16. int button_reverte1 = 3; // botão reverte motor 1
  17. int button_liga2 = 4; // botão liga motor 2
  18. int button_reverte2 = 5; // botão reverte motor 2
  19. int led1=10; // led1 no pino 10
  20. int led2=11; // led2 no pino 11
  21. int led3=12; // led3 no pino 12
  22. int led4=13; // led4 no pino 13
  23. int led5=6; // led5 no pino 6
  24. int led6=7; // led6 no pino 7
  25. int led7=8; // led7 no pino 8
  26. int led8=9; // led8 no pino 9
  27. signed int step_motor_1=0; // passo do motor 1
  28. signed int step_motor_2=0; // passo do motor 2
  29. boolean buttonState = LOW; // estado do botão
  30.  
  31. void setup(){
  32. // configura os pinos como saída
  33. pinMode(led1,OUTPUT);
  34. pinMode(led2,OUTPUT);
  35. pinMode(led3,OUTPUT);
  36. pinMode(led4,OUTPUT);
  37. pinMode(led5,OUTPUT);
  38. pinMode(led6,OUTPUT);
  39. pinMode(led7,OUTPUT);
  40. pinMode(led8,OUTPUT);
  41. // configura os pinos como entrada
  42. pinMode(button_liga1,INPUT);
  43. pinMode(button_liga2,INPUT);
  44. pinMode(button_reverte1,INPUT);
  45. pinMode(button_reverte2,INPUT);
  46. // apaga os leds
  47. digitalWrite(led1,led1_state);
  48. digitalWrite(led2,led2_state);
  49. digitalWrite(led3,led3_state);
  50. digitalWrite(led4,led4_state);
  51. digitalWrite(led5,led5_state);
  52. digitalWrite(led6,led6_state);
  53. digitalWrite(led7,led7_state);
  54. digitalWrite(led8,led8_state);
  55. }
  56.  
  57. void loop() {
  58. // motor 1
  59. if (step_motor_1==0 && temp1_on==false){
  60. temp1=millis(); // carrega o temp1 com o tempo atual
  61. temp1_on=true; // liga o timer 1
  62. digitalWrite(led1, true);
  63. digitalWrite(led2, false);
  64. digitalWrite(led3, false);
  65. digitalWrite(led4, false);
  66. }
  67. if (step_motor_1==1 && temp1_on==false){
  68. temp1=millis(); // carrega o temp1 com o tempo atual
  69. temp1_on=true; // liga o timer 1
  70. digitalWrite(led1, true);
  71. digitalWrite(led2, true);
  72. digitalWrite(led3, false);
  73. digitalWrite(led4, false);
  74. }
  75. if (step_motor_1==2 && temp1_on==false){
  76. temp1=millis(); // carrega o temp1 com o tempo atual
  77. temp1_on=true; // liga o timer 1
  78. digitalWrite(led1, false);
  79. digitalWrite(led2, true);
  80. digitalWrite(led3, false);
  81. digitalWrite(led4, false);
  82. }
  83. if (step_motor_1==3 && temp1_on==false){
  84. temp1=millis(); // carrega o temp1 com o tempo atual
  85. temp1_on=true; // liga o timer 1
  86. digitalWrite(led1, false);
  87. digitalWrite(led2, true);
  88. digitalWrite(led3, true);
  89. digitalWrite(led4, false);
  90. }
  91. if (step_motor_1==4 && temp1_on==false){
  92. temp1=millis(); // carrega o temp1 com o tempo atual
  93. temp1_on=true; // liga o timer 1
  94. digitalWrite(led1, false);
  95. digitalWrite(led2, false);
  96. digitalWrite(led3, true);
  97. digitalWrite(led4, false);
  98. }
  99. if (step_motor_1==5 && temp1_on==false){
  100. temp1=millis(); // carrega o temp1 com o tempo atual
  101. temp1_on=true; // liga o timer 1
  102. digitalWrite(led1, false);
  103. digitalWrite(led2, false);
  104. digitalWrite(led3, true);
  105. digitalWrite(led4, true);
  106. }
  107. if (step_motor_1==6 && temp1_on==false){
  108. temp1=millis(); // carrega o temp1 com o tempo atual
  109. temp1_on=true; // liga o timer 1
  110. digitalWrite(led1, false);
  111. digitalWrite(led2, false);
  112. digitalWrite(led3, false);
  113. digitalWrite(led4, true);
  114. }
  115. if (step_motor_1==7 && temp1_on==false){
  116. temp1=millis(); // carrega o temp1 com o tempo atual
  117. temp1_on=true; // liga o timer 1
  118. digitalWrite(led1, true);
  119. digitalWrite(led2, false);
  120. digitalWrite(led3, false);
  121. digitalWrite(led4, true);
  122. }
  123. buttonState = digitalRead(button_liga1);
  124. if (buttonState==HIGH) {
  125. if (millis()>(temp1+interval_temp1)){
  126. temp1_on=false;
  127. buttonState = digitalRead(button_reverte1);
  128. if (buttonState==HIGH) {
  129. step_motor_1=step_motor_1+1;
  130. if(step_motor_1>7) step_motor_1=0;
  131. }
  132. else {
  133. step_motor_1=step_motor_1-1;
  134. if(step_motor_1<0) step_motor_1=7;
  135. }
  136. }
  137. }
  138.  
  139. // motor 2
  140. if (step_motor_2==0 && temp2_on==false){
  141. temp2=millis(); // carrega o temp2 com o tempo atual
  142. temp2_on=true; // liga o timer 2
  143. digitalWrite(led5, true);
  144. digitalWrite(led6, false);
  145. digitalWrite(led7, false);
  146. digitalWrite(led8, false);
  147. }
  148. if (step_motor_2==1 && temp2_on==false){
  149. temp2=millis(); // carrega o temp2 com o tempo atual
  150. temp2_on=true; // liga o timer 2
  151. digitalWrite(led5, true);
  152. digitalWrite(led6, true);
  153. digitalWrite(led7, false);
  154. digitalWrite(led8, false);
  155. }
  156. if (step_motor_2==2 && temp2_on==false){
  157. temp2=millis(); // carrega o temp2 com o tempo atual
  158. temp2_on=true; // liga o timer 2
  159. digitalWrite(led5, false);
  160. digitalWrite(led6, true);
  161. digitalWrite(led7, false);
  162. digitalWrite(led8, false);
  163. }
  164. if (step_motor_2==3 && temp2_on==false){
  165. temp2=millis(); // carrega o temp2 com o tempo atual
  166. temp2_on=true; // liga o timer 2
  167. digitalWrite(led5, false);
  168. digitalWrite(led6, true);
  169. digitalWrite(led7, true);
  170. digitalWrite(led8, false);
  171. }
  172. if (step_motor_2==4 && temp2_on==false){
  173. temp2=millis(); // carrega o temp2 com o tempo atual
  174. temp2_on=true; // liga o timer 2
  175. digitalWrite(led5, false);
  176. digitalWrite(led6, false);
  177. digitalWrite(led7, true);
  178. digitalWrite(led8, false);
  179. }
  180. if (step_motor_2==5 && temp2_on==false){
  181. temp2=millis(); // carrega o temp2 com o tempo atual
  182. temp2_on=true; // liga o timer 2
  183. digitalWrite(led5, false);
  184. digitalWrite(led6, false);
  185. digitalWrite(led7, true);
  186. digitalWrite(led8, true);
  187. }
  188. if (step_motor_2==6 && temp2_on==false){
  189. temp2=millis(); // carrega o temp2 com o tempo atual
  190. temp2_on=true; // liga o timer 2
  191. digitalWrite(led5, false);
  192. digitalWrite(led6, false);
  193. digitalWrite(led7, false);
  194. digitalWrite(led8, true);
  195. }
  196. if (step_motor_2==7 && temp2_on==false){
  197. temp2=millis(); // carrega o temp2 com o tempo atual
  198. temp2_on=true; // liga o timer 2
  199. digitalWrite(led5, true);
  200. digitalWrite(led6, false);
  201. digitalWrite(led7, false);
  202. digitalWrite(led8, true);
  203. }
  204. buttonState = digitalRead(button_liga2);
  205. if (buttonState==HIGH) {
  206. if (millis()>(temp2+interval_temp2)){
  207. temp2_on=false;
  208. buttonState = digitalRead(button_reverte2);
  209. if (buttonState==HIGH) {
  210. step_motor_2=step_motor_2+1;
  211. if(step_motor_2>7) step_motor_2=0;
  212. }
  213. else {
  214. step_motor_2=step_motor_2-1;
  215. if(step_motor_2<0) step_motor_2=7;
  216. }
  217. }
  218. }
  219.  
  220.  
  221. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement