coucou

Dependencies:   RoboClaw mbed

Fork of Robot2016_2-0 by ARES

Revision:
58:02dc8328975a
Child:
71:5590dbe8393a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/StepperMotor/Stepper.cpp	Wed May 04 19:55:03 2016 +0000
@@ -0,0 +1,50 @@
+#include "defines.h"
+#include "Stepper.h"
+#include "mbed.h"
+
+Stepper::Stepper(PinName _en, PinName _stepPin, PinName _dir, PinName _minEndStop, float step_per_mm):en(_en),
+    stepPin(_stepPin),
+    direction(_dir),
+    minEndStop(_minEndStop)
+{
+    Step_Per_MM = step_per_mm;
+}
+
+void Stepper::step(int number, int dir, float speed)
+{
+    if (dir == HAUT) {
+        direction = 0;
+    } else if (dir == BAS) {
+        direction = 1;
+    }
+    
+    //  Step...
+    for(int i=0; i<number && !(minEndStop.read() == 0 && dir == BAS); i++)
+    {
+        stepPin = 1;
+        wait_us(5);
+        stepPin = 0;
+        wait_us(5);
+        wait(speed);
+    }
+}
+
+void Stepper::mm(int number, int dir)
+{
+    step(number*Step_Per_MM, dir, DELAY-0.001);
+}
+
+void Stepper::mm(float distance)
+{
+    step(abs(distance*Step_Per_MM), (distance>0?HAUT:BAS), DELAY-0.001);
+}
+
+void Stepper::enable()
+{
+    en = 0;
+}
+
+void Stepper::disable()
+{
+    en = 1;
+}
\ No newline at end of file