Advertisement
Guest User

Untitled

a guest
May 6th, 2022
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.67 KB | None | 0 0
  1. #include <SoftwareSerial.h>
  2. #include <AccelStepper.h>
  3.  
  4. #define EN 4
  5. #define STEPS_PER_REVOLUTION_IN_START 75
  6. #define STEPS_PER_REVOLUTION_REV_IN_START 500
  7.  
  8. int stepsPerRevolution = STEPS_PER_REVOLUTION_IN_START;
  9. int stepsPerRevolutionRev = STEPS_PER_REVOLUTION_REV_IN_START;
  10.  
  11. AccelStepper myStepper (AccelStepper::DRIVER, 9, 8) ;
  12.  
  13. void setup() {
  14.   Serial.begin(115200); // Initialize the serial port // Initialize the mySerial port
  15.   myStepper.setMaxSpeed (500);
  16.   myStepper.setAcceleration (100000);
  17.   myStepper.setEnablePin(EN);
  18.   //myStepper.setPinsInverted(false, false, false, false, false);
  19.   String dd = "";
  20.   //myStepper.disableOutputs();
  21.   pinMode(EN, OUTPUT);
  22. }
  23.  
  24. void loop() {
  25.   String state = Serial.readStringUntil('\n');
  26.   if (state.length() > 0) {
  27.   if (state.length() == 3) {
  28.     stepsPerRevolution = state.toInt();
  29.     Serial.println(stepsPerRevolution);
  30.   }
  31.     if (state == "1") {
  32.       //Serial.println(dd);
  33.       myStepper.move(stepsPerRevolutionRev);
  34.       int tmpSteps = myStepper.currentPosition() + stepsPerRevolution;
  35.       while (myStepper.currentPosition() != tmpSteps) {
  36.         myStepper.run();
  37.       }
  38.       myStepper.stop(); // Stop as fast as possible: sets new target
  39.       myStepper.runToPosition(); // Now stopped after quickstop
  40.       tmpSteps = myStepper.currentPosition() - stepsPerRevolutionRev;
  41.       myStepper.move(-stepsPerRevolutionRev); // Now go backwards
  42.       while (myStepper.currentPosition() != tmpSteps) {
  43.         myStepper.run();
  44.       }
  45.       myStepper.stop(); // Stop as fast as possible: sets new target
  46.       myStepper.runToPosition();
  47.     }
  48.   }
  49.   digitalWrite(EN, HIGH);
  50.   myStepper.disableOutputs();
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement