20 this->
pPort = inpPort;
26 this->stepsNumber = inStepsNumber;
27 this->reduction = inReduction;
28 this->angleByStep = 360. / inStepsNumber / inReduction;
37 #ifdef ACCESSORIES_DEBUG_MODE 38 Serial.print(F(
"AccessoryStepper MoveToggle() : "));
54 #ifdef ACCESSORIES_DEBUG_MODE 55 Serial.println(F(
"AccessoryStepper Move()"));
73 #ifdef ACCESSORIES_DEBUG_MODE 74 Serial.print(F(
" AccessoryStepper MovePosition() to: "));
75 Serial.println(inAbsolutePosition);
86 #ifdef ACCESSORIES_DEBUG_MODE 87 Serial.print(F(
" AccessoryStepper MoveRelativePosition() for "));
88 Serial.print(inRelativePosition);
89 Serial.print(F(
" steps."));
99 case ACCESSORIES_EVENT_TOGGLE:
103 case ACCESSORIES_EVENT_MOVE:
106 case ACCESSORIES_MOVE_STRAIGHT:
107 case ACCESSORIES_MOVE_TOP:
108 case ACCESSORIES_MOVE_LEFT:
109 case ACCESSORIES_MOVE_DIVERGE:
110 case ACCESSORIES_MOVE_BOTTOM:
111 case ACCESSORIES_MOVE_RIGHT:
112 case ACCESSORIES_MOVE_OFF:
113 case ACCESSORIES_MOVE_STOP:
118 case ACCESSORIES_MOVE_MORE:
119 case ACCESSORIES_MOVE_LESS:
120 if (this->
GetState() == CALIBRATION)
136 case ACCESSORIES_EVENT_MOVEPOSITION:
140 case ACCESSORIES_EVENT_MOVEPOSITIONID:
144 case ACCESSORIES_EVENT_MOVEPOSITIONINDEX:
148 case ACCESSORIES_EVENT_SETSPEED:
152 case ACCESSORIES_EVENT_SETDURATION:
161 bool AccessoryStepper::ActionEnded()
175 #ifdef ACCESSORIES_DEBUG_MODE 176 Serial.print(F(
" AccessoryStepper end of movement. Pos : "));
184 #ifdef ACCESSORIES_PRINT_ACCESSORIES 185 void AccessoryStepper::printAccessory()
187 Serial.print(F(
" Stepper : "));
190 Serial.print(F(
" / ID "));
192 Serial.print(F(
" - pos "));
196 Serial.print(F(
" / StepsNumber "));
197 Serial.print(this->stepsNumber);
198 Serial.print(F(
" / Reduction "));
199 Serial.print(this->reduction);
202 Serial.print(F(
" / Speed: "));
203 Serial.print(this->
GetPort()->GetSpeed());
205 Serial.print(F(
" / Delay: "));
207 Serial.print(F(
" / "));
210 Serial.println(F(
" "));
unsigned int GetDebounceDelay() const
int GetMovingPositionValueByIndex(uint8_t inIndex) const
void SetDuration(unsigned long inDuration)
void SetStateRaw(ACC_STATE inNewState)
void Event(unsigned long inId, ACCESSORIES_EVENT_TYPE inEvent = ACCESSORIES_EVENT_MOVEPOSITIONINDEX, int inData = 0)
void MoveRelativePosition(int inRelativePosition)
int GetMovingPositionValueById(unsigned long inId) const
void MovePosition(int inAbsolutePosition)
uint8_t IndexOfMovingPositionById(unsigned long inId) const
virtual void ResetAction()
void SetLastMovingPosition(uint8_t inLastPositionIndex)
unsigned long GetMovingPositionIdByIndex(uint8_t inIndex) const
void Move(unsigned long inId)
const uint8_t GetMovingPositionSize() const
virtual void MovePosition(unsigned long inDuration, int inEndPosition)
const uint8_t GetLastMovingPosition() const
ACC_STATE GetState() const
bool IsActionDelayPending() const
void AdjustMovingPositionsSize(uint8_t inNewSize)
void begin(ACC_STATE inStartingState = STATE_NONE)
virtual int SetSpeed(int inSpeed)
void begin(Port *inpPort, int inStepsNumber, int inReduction, unsigned int inSpeed = 0, int inMovingPositionsNumber = 1)