Advertisement
NapsterMP3

I2C to Accel Stepper

Jan 30th, 2017
243
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.50 KB | None | 0 0
  1.  
  2. #include <AccelStepper.h>
  3. //#include <DMXSerial.h>
  4. #include <Wire.h>
  5.  
  6. AccelStepper stepper(8, 8, 9, 10, 11);
  7. AccelStepper stepper2(8, 4, 5, 6, 7);
  8.  
  9. int a = 0;
  10. int b = 0;
  11. int c=0;
  12. int d=0;
  13. int e=0;
  14. const int botao = 13;
  15. //const int botao2 = 13;
  16. int estadoBotao = 0;
  17. int estadoBotao2 = 0;
  18.  
  19. int mapa = 0;
  20. int mapa2 = 0;
  21. int mapa3 = 0;
  22. int mapa4 = 0;
  23. int mapa5 = 0;
  24.  
  25. void setup(){
  26.  
  27. Wire.begin(8); // join i2c bus with address #8
  28. Wire.onReceive(receiveEvent); // register event
  29. //DMXSerial.init(DMXReceiver);
  30. stepper.setMaxSpeed(1000);
  31. stepper.setSpeed(2);
  32. stepper.setAcceleration (1000);
  33.  
  34. stepper2.setMaxSpeed(500);
  35. stepper2.setSpeed(0);
  36. stepper2.setAcceleration (500);
  37.  
  38. pinMode(botao,INPUT);
  39. //pinMode(botao2,INPUT);
  40.  
  41. while (estadoBotao == LOW) {
  42. estadoBotao = digitalRead(botao);
  43. stepper.move(4);
  44. stepper.run();}
  45.  
  46. delay(500);
  47.  
  48. stepper.setCurrentPosition(0);
  49.  
  50. for (int i = 0; i < 15; i++){
  51. delay(50);
  52. stepper.move(-1);
  53. stepper.run();
  54. }
  55. delay(500);
  56. stepper.setCurrentPosition(0);
  57.  
  58.  
  59. for (int i = 0; i < 220; i++){
  60. delay(100);
  61. stepper2.move(-1);
  62. stepper2.run();
  63. }
  64. delay(500);
  65. stepper2.setCurrentPosition(0);
  66. for (int i = 0; i < 5; i++){
  67. delay(50);
  68. stepper2.move(1);
  69. stepper2.run();
  70. }
  71. delay(500);
  72. stepper2.setCurrentPosition(0);
  73. //stepper2.setMaxSpeed(600);
  74.  
  75. }
  76.  
  77. void loop(){
  78.  
  79. //unsigned long lastPacket = DMXSerial.noDataSince();
  80.  
  81. //if (lastPacket < 5000) {
  82. //a = ( DMXSerial.read(1));
  83. mapa=map(a,0,255,0,-2400);
  84. //b = ( DMXSerial.read(2));
  85. mapa2=map(b,0,255,0,200);
  86. //e = ( DMXSerial.read(6)); //Velocidade motores
  87. mapa3=map(e,0,255,1000,50);
  88. mapa4=map(e,0,255,1000,2);
  89. //}
  90.  
  91. stepper.setMaxSpeed(mapa3);
  92. stepper2.setMaxSpeed(mapa3);
  93.  
  94. stepper2.moveTo(d);
  95. stepper2.run();
  96.  
  97. stepper.moveTo(c);
  98. stepper.run();
  99.  
  100. if(c<mapa){
  101. c = c+1;
  102. }
  103. if(c>mapa){
  104. c = c-1;
  105. }
  106.  
  107. if(d<mapa2){
  108. d = d+1;
  109. }
  110. if(d>mapa2){
  111. d = d-1;
  112. }
  113.  
  114. }
  115. void receiveEvent(int howMany) {
  116. a = Wire.read();
  117. b = Wire.read();
  118. e = Wire.read();
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement