Hello program for StepperMotorUni library

Dependencies:   StepperMotorUni mbed

Dependents:   StepperMotorUni_Hello

Sample code for stepper motor operation with StepperMotorUni library

4 output pin generates signal for stepper motor driver.

/media/uploads/okano/unipolar-steppermotor-sample.png

This library can operate in parallel for multiple stepper motors.


The mbed generates pulses on 4 output pins for external driver stage.
The StepperMotorUni library can generate 3 types of pulses.

1 phase drive (wave drive)

#include "mbed.h"
#include "StepperMotorUni.h"
 
StepperMotorUni motor( p26, p25, p24, p23 );
 
int main()
{
    motor.set_operation_phase_mode( StepperMotorUni::ONE_PHASE );
    ...
    ...

/media/uploads/okano/1phase_drive.gif

2 phase drive

#include "mbed.h"
#include "StepperMotorUni.h"
 
StepperMotorUni motor( p26, p25, p24, p23 );
 
int main()
{
    motor.set_operation_phase_mode( StepperMotorUni::TWO_PHASE );
    ...
    ...

/media/uploads/okano/2phase_drive.gif

1-2 phase (half step) drive

#include "mbed.h"
#include "StepperMotorUni.h"
 
StepperMotorUni motor( p26, p25, p24, p23 );
 
int main()
{
    motor.set_operation_phase_mode( StepperMotorUni::HALFSTEP );
    ...
    ...

/media/uploads/okano/halfstep_drive.gif

Components pages

Components pages are available for bipolar and unipolar motor libraries

A bipolar stepper motor driving pulse generator

A unipolar stepper motor driving pulse generator

Revision:
0:ae2206213141
Child:
1:80c512ccd0f2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Sun Jan 19 11:01:48 2014 +0000
@@ -0,0 +1,26 @@
+/** "Hello" program for StepperMotorUni class library
+ *
+ *  very simple sample of "StepperMotorUni" operation 
+ * 
+ *  version 1.0
+ *  copyright: 2014 Tedd OKANO
+ *  released under the Apache 2 license License
+ */
+
+#include "mbed.h"
+#include "StepperMotorUni.h"
+
+StepperMotorUni motor( p26, p25, p24, p23 );
+
+int main()
+{
+    motor.set_pps( 50 );
+
+    while ( 1 ) {
+        motor.move_steps( 24 );
+        wait( 1 );
+
+        motor.move_steps( -24 );
+        wait( 1 );
+    }
+}