A simple stepper motor driver library, supporting micro-stepping drivers.

Dependents:   Test_LCDTS_UI_StepperMove

Committer:
Abdel64
Date:
Sat Nov 14 11:44:18 2020 +0000
Revision:
2:97b1bc1f0b5f
Compile OK incl. Table class

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Abdel64 2:97b1bc1f0b5f 1 #ifndef MBED_TABLE_H
Abdel64 2:97b1bc1f0b5f 2 #define MBED_TABLE_H
Abdel64 2:97b1bc1f0b5f 3
Abdel64 2:97b1bc1f0b5f 4 #include "Stepper.h"
Abdel64 2:97b1bc1f0b5f 5
Abdel64 2:97b1bc1f0b5f 6 struct table_pins
Abdel64 2:97b1bc1f0b5f 7 {
Abdel64 2:97b1bc1f0b5f 8 PinName X_en;
Abdel64 2:97b1bc1f0b5f 9 PinName X_stepPin;
Abdel64 2:97b1bc1f0b5f 10 PinName X_dir;
Abdel64 2:97b1bc1f0b5f 11 PinName Y_en;
Abdel64 2:97b1bc1f0b5f 12 PinName Y_stepPin;
Abdel64 2:97b1bc1f0b5f 13 PinName Y_dirG;
Abdel64 2:97b1bc1f0b5f 14 PinName Y_dirD;
Abdel64 2:97b1bc1f0b5f 15 };
Abdel64 2:97b1bc1f0b5f 16
Abdel64 2:97b1bc1f0b5f 17 struct position
Abdel64 2:97b1bc1f0b5f 18 {
Abdel64 2:97b1bc1f0b5f 19 float X;
Abdel64 2:97b1bc1f0b5f 20 float Y;
Abdel64 2:97b1bc1f0b5f 21 };
Abdel64 2:97b1bc1f0b5f 22
Abdel64 2:97b1bc1f0b5f 23 bool operator == (const position &pos1, const position &pos2){
Abdel64 2:97b1bc1f0b5f 24 return (pos1.X == pos2.X) && (pos1.Y == pos2.Y); }
Abdel64 2:97b1bc1f0b5f 25
Abdel64 2:97b1bc1f0b5f 26 class table
Abdel64 2:97b1bc1f0b5f 27 {
Abdel64 2:97b1bc1f0b5f 28 public:
Abdel64 2:97b1bc1f0b5f 29 table(table_pins _tablepin) ;
Abdel64 2:97b1bc1f0b5f 30 void move(position pos_current, position pos_togo, float speed);
Abdel64 2:97b1bc1f0b5f 31 private:
Abdel64 2:97b1bc1f0b5f 32 stepper *stepper_X;
Abdel64 2:97b1bc1f0b5f 33 steppers *steppers_Y;
Abdel64 2:97b1bc1f0b5f 34 };
Abdel64 2:97b1bc1f0b5f 35
Abdel64 2:97b1bc1f0b5f 36 #endif // MBED_TABLE_H