summaryrefslogtreecommitdiff
path: root/Arduino/libraries/AccelStepper/examples/Quickstop
diff options
context:
space:
mode:
Diffstat (limited to 'Arduino/libraries/AccelStepper/examples/Quickstop')
-rw-r--r--Arduino/libraries/AccelStepper/examples/Quickstop/Quickstop.pde40
1 files changed, 40 insertions, 0 deletions
diff --git a/Arduino/libraries/AccelStepper/examples/Quickstop/Quickstop.pde b/Arduino/libraries/AccelStepper/examples/Quickstop/Quickstop.pde
new file mode 100644
index 0000000..e6cfd44
--- /dev/null
+++ b/Arduino/libraries/AccelStepper/examples/Quickstop/Quickstop.pde
@@ -0,0 +1,40 @@
+// Quickstop.pde
+// -*- mode: C++ -*-
+//
+// Check stop handling.
+// Calls stop() while the stepper is travelling at full speed, causing
+// the stepper to stop as quickly as possible, within the constraints of the
+// current acceleration.
+//
+// Copyright (C) 2012 Mike McCauley
+// $Id: $
+
+#include <AccelStepper.h>
+
+// Define a stepper and the pins it will use
+AccelStepper stepper; // Defaults to AccelStepper::FULL4WIRE (4 pins) on 2, 3, 4, 5
+
+void setup()
+{
+ stepper.setMaxSpeed(150);
+ stepper.setAcceleration(100);
+}
+
+void loop()
+{
+ stepper.moveTo(500);
+ while (stepper.currentPosition() != 300) // Full speed up to 300
+ stepper.run();
+ stepper.stop(); // Stop as fast as possible: sets new target
+ stepper.runToPosition();
+ // Now stopped after quickstop
+
+ // Now go backwards
+ stepper.moveTo(-500);
+ while (stepper.currentPosition() != 0) // Full speed basck to 0
+ stepper.run();
+ stepper.stop(); // Stop as fast as possible: sets new target
+ stepper.runToPosition();
+ // Now stopped after quickstop
+
+}