Accessories
Arduino for motors and lights library.
PortStepper.hpp
1 //-------------------------------------------------------------------
2 #ifndef __PortStepper_H__
3 #define __PortStepper_H__
4 //-------------------------------------------------------------------
5 
6 #include "Port.hpp"
7 
8 #ifndef NO_STEPPER
9 
10 #include "LocoStepper.h"
11 
25 class PortStepper: public Port
26 {
27  protected:
30 
31  public:
33  PortStepper();
34 
46  void begin(uint8_t inPin1, uint8_t inPin2, PIN_TYPE inType = DIGITAL, uint8_t *inpSteps = NULL);
61  void begin(uint8_t inPin1, uint8_t inPin2, uint8_t inPin3, uint8_t inPin4, PIN_TYPE inType = DIGITAL, uint8_t *inpSteps = NULL);
62 
67  void MovePosition(unsigned long inDuration, int inEndPosition);
72  void MoveRelativePosition(unsigned long inDuration, int inIncrementalPosition);
73 
79  inline bool run() { return this->pMotor->run(); }
83  inline long currentPosition() { return this->pMotor->currentPosition(); }
87  inline long targetPosition() { return this->pMotor->targetPosition(); }
93  inline int GetPosition() { return (int) this->currentPosition(); }
94 
95 #ifdef ACCESSORIES_PRINT_ACCESSORIES
96 
97  uint8_t printPin1;
99  uint8_t printPin2;
101  uint8_t printPin3;
103  uint8_t printPin4;
105  PIN_TYPE printType;
107  uint8_t *printpSteps;
111  void printPort();
112 #endif
113 };
114 #endif
115 
116 //-------------------------------------------------------------------
117 #endif
118 //-------------------------------------------------------------------
int GetPosition()
Definition: PortStepper.hpp:93
long targetPosition()
long targetPosition()
Definition: PortStepper.hpp:87
long currentPosition()
long currentPosition()
Definition: PortStepper.hpp:83
boolean run()
Definition: LocoStepper.cpp:72
void MoveRelativePosition(unsigned long inDuration, int inIncrementalPosition)
Definition: PortStepper.cpp:57
virtual void begin()
Definition: Port.hpp:114
LocoStepper * pMotor
Definition: PortStepper.hpp:29
Support for stepper motors with acceleration etc.
Definition: LocoStepper.h:81
Definition: Port.hpp:61
void MovePosition(unsigned long inDuration, int inEndPosition)
Definition: PortStepper.cpp:45