StepperArray.ino 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #include <TeensyStep.h>
  2. Stepper M1(0, 1), M2(2, 3), M3(4, 5), M4(6, 7), M5(8, 9), M6(10, 11); // create 6 motors
  3. StepControl controller;
  4. void setup()
  5. {
  6. pinMode(LED_BUILTIN,OUTPUT);
  7. delay(100);
  8. Stepper* motorSet_A[] = {&M1, &M2, &M5, &M6 }; // define an array of pointers to motors 1,2,5 and 6
  9. M1.setTargetAbs(200); // set targets for the motors
  10. M2.setTargetAbs(-500);
  11. M5.setTargetAbs(-100);
  12. M6.setTargetAbs(30);
  13. controller.move(motorSet_A); // move all motors in the array to their targets
  14. delay(500); // just to generate a nice output on the logic analyzer
  15. Stepper* motorSet_B[] = {&M1, &M3, &M4}; // another set of motors;
  16. M1.setTargetAbs(-110);
  17. M3.setTargetAbs(50);
  18. M4.setTargetAbs(230);
  19. controller.move(motorSet_B); // move set B to target
  20. delay(500); // just to generate a nice output on the logic analyzer
  21. for (int i = 0; i < 4; i++) { // loop through all motors in motorSet_A...
  22. motorSet_A[i]->setTargetAbs(0); // ... set targets to 0...
  23. }
  24. controller.move(motorSet_A); // ... and move home
  25. }
  26. void loop(){
  27. digitalWriteFast(LED_BUILTIN,!digitalReadFast(LED_BUILTIN));
  28. delay(100);
  29. }