Firmware - Servo Animation
Webpage under constructionServo Animation
Words
extern ServoAnimCallback onServoAnimDoneCallback;
extern ServoAnimCallback onServoAnimLoopCallback;
enum servoAnimName {
SERVO_ANIM_NONE,
SERVO_ANIM_GENTLE,
SERVO_ANIM_SWAY,
SERVO_ANIM_SOARING,
SERVO_ANIM_TOUCHGRASS,
SERVO_ANIM_SWOOSH,
SERVO_ANIM_PARTY,
SERVO_ANIM_FLUTTER,
SERVO_ANIM_RANGE,
SERVO_ANIM_POSITION
};
enum servoAnimFlutterWings {
SERVO_ANIM_FLUTTER_WINGS_BOTH_HOME,
SERVO_ANIM_FLUTTER_WINGS_BOTH_UP,
SERVO_ANIM_FLUTTER_WINGS_LEFT_HOME,
SERVO_ANIM_FLUTTER_WINGS_LEFT_UP,
SERVO_ANIM_FLUTTER_WINGS_RIGHT_HOME,
SERVO_ANIM_FLUTTER_WINGS_RIGHT_UP
};
enum servoAnimFlutterPos {
SERVO_ANIM_FLUTTER_POS_NONE,
SERVO_ANIM_FLUTTER_POS_HOME,
SERVO_ANIM_FLUTTER_POS_UP,
SERVO_ANIM_FLUTTER_POS_DOWN
};
enum servoAnimRangeSpan {
SERVO_ANIM_RANGE_DOWN_UP,
SERVO_ANIM_RANGE_HOME_UP,
SERVO_ANIM_RANGE_ALT_HOME_UP
};
enum servoAnimPosition {
SERVO_ANIM_POSITION_DOWN,
SERVO_ANIM_POSITION_HOME,
SERVO_ANIM_POSITION_UP
};
void setServoAnimationTaskPriority(uint8_t p);
void setServoAnim(struct ServoAnimation *a, uint8_t n, uint8_t t);
void setServoAnimDuration(struct ServoAnimation *a, long duration);
void setServoAnimRepeats(struct ServoAnimation *a, int r);
void setServoAnimSpeed(struct ServoAnimation *a, uint16_t del);
void startServoAnim(struct ServoAnimation *a);
void stopServoAnim(struct ServoAnimation *a);
void setServoAnimRange(struct ServoAnimation *a, int n);
void setServoAnimFlutterWings(struct ServoAnimation *a, int n);
void setServoAnimFlutterPos(struct ServoAnimation *a, int n);
void setServoAnimFlutterOffset(struct ServoAnimation *a, int n);
void setServoAnimRangeSpan(struct ServoAnimation *a, int n);
void setServoAnimRangeVal(struct ServoAnimation *a, int n);
void setServoAnimPositionLeft(struct ServoAnimation *a, int n);
void setServoAnimPositionRight(struct ServoAnimation *a, int n);
int getServoSafeValLeft(int n);
int getServoSafeValRight(int n);