Advertisement
RuiViana

Big_Number_Gira_Motor

Oct 25th, 2015
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.83 KB | None | 0 0
  1. //Podes por a biblioteca normal do hello world que funciona
  2. //faltava me colocar a cena que esta na primeira linha do setup
  3.  
  4. #include <LiquidCrystal.h>
  5. #include <BigNumbers.h>
  6. const int lcdD7Pin = 2; // LCD D7 pin
  7. const int lcdD6Pin = 3; // LCD D6 pin
  8. const int lcdD5Pin = 4; // LCD D5 pin
  9. const int lcdD4Pin = 5; // LCD D4 pin
  10. const int lcdEPin = 11; // LCD E Pin
  11. const int lcdRSPin = 12; // LCD RS pin
  12. unsigned int Tempo1 = 0;
  13. byte Motor_Girou = 0;
  14.  
  15. LiquidCrystal lcd(lcdRSPin, lcdEPin, lcdD4Pin, lcdD5Pin, lcdD6Pin, lcdD7Pin);
  16. BigNumbers bigNum(&lcd);
  17. int contador=0;
  18.  
  19. #define a digitalRead(A2)
  20. #define b digitalRead(A3)
  21. #define c digitalRead(A4)
  22.  
  23. //----------------------------------------------------------------------------
  24. void setup()
  25. {
  26. TCCR1B = TCCR1B & 0b11111000 | 0x01; //Para o arduino UNO
  27. pinMode(13,OUTPUT);
  28. pinMode(9,OUTPUT);
  29. pinMode(10,OUTPUT);
  30. analogWrite(9,50); // set LCD contrast with PWM - change this value if hard to read display
  31. analogWrite(10,127); // set LCD backlight with PWM
  32. lcd.begin(16,2); // setup LCD rows and columns
  33. bigNum.begin(); // set up BigNumbers
  34. lcd.clear(); // clear display
  35.  
  36. pinMode(A2,INPUT);
  37. pinMode(A3,INPUT);
  38. pinMode(A4,INPUT);
  39. digitalWrite(A2,1);
  40. digitalWrite(A3,1);
  41. digitalWrite(A4,1);
  42. }
  43. //-------------------------------------------------------------------------------
  44. void Alvo()
  45. {
  46. if (a==0)
  47. {
  48. contador=contador+1;
  49. }
  50. delay(20);
  51. if (b==0)
  52. {
  53. contador=contador+5;
  54. }
  55. delay(20);
  56. if (c==0)
  57. {
  58. contador=contador+10;
  59. }
  60. delay(20);
  61. }
  62.  
  63. //----------------------------------------------------------------------------
  64. void loop()
  65. {
  66. //cont:
  67. Alvo();
  68. bigNum.displayLargeInt(contador,0,6, false); // 6 é a posição é onde fica o caracter das UNIDADES no display
  69. if ((contador >= 20)&& (Motor_Girou == 0))
  70. {
  71. Motor_Girou = 1;
  72. Tempo1 = millis();
  73. while (contador >= 20)
  74. {
  75. if ((millis() - Tempo1) < 5000) // Gira por 5 seg
  76. {
  77. digitalWrite(13, HIGH); // Gira motor
  78. Alvo();
  79. }
  80. else
  81. digitalWrite(13, LOW); // Desliga motor
  82.  
  83. while (contador >= 100)
  84. {
  85. digitalWrite(12, HIGH); // Gira motor
  86. delay(10000);
  87. digitalWrite(12, LOW); // Desliga motor
  88. while(1) {} // Para o programa
  89. }
  90. }
  91. }
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement