A simple stepper motor driver library, supporting micro-stepping drivers such as the Pololu A4988 stepper driver carrier or the Sparkfun EasyDriver.
Dependents: Robot2016_2-0_STATIC Robot2016_2-0
Fork of StepperMotor by
Stepper.cpp
00001 #include "Stepper.h" 00002 #include "mbed.h" 00003 00004 Stepper::Stepper(PinName _en, PinName _stepPin, PinName _dir, float step_per_mm):en(_en), 00005 stepPin(_stepPin), 00006 direction(_dir) 00007 { 00008 Step_Per_MM = step_per_mm; 00009 } 00010 00011 void Stepper::step(int number, int dir, float speed) 00012 { 00013 if (dir == 1) { 00014 direction = 0; 00015 } else if (dir == 0) { 00016 direction = 1; 00017 } 00018 00019 // Step... 00020 for(int i=0; i<number; i++) 00021 { 00022 stepPin = 1; 00023 wait_us(5); 00024 stepPin = 0; 00025 wait_us(5); 00026 wait(speed); 00027 } 00028 } 00029 00030 void Stepper::mm(int number, int dir) 00031 { 00032 step(number*Step_Per_MM, dir, DELAY-0.001); 00033 } 00034 00035 void Stepper::enable() 00036 { 00037 en = 0; 00038 } 00039 00040 void Stepper::disable() 00041 { 00042 en = 1; 00043 }
Generated on Tue Jul 12 2022 18:31:57 by
1.7.2
