PushToGo on STM32F429-Disco Board
Dependencies: BSP_DISCO_F429ZI LCD_DISCO_F429ZI pushtogo usb
AdaptiveAxis.h@8:f0455a1d4709, 2018-09-23 (annotated)
- Committer:
- caoyu@caoyuan9642-desktop.MIT.EDU
- Date:
- Sun Sep 23 02:31:28 2018 -0400
- Revision:
- 8:f0455a1d4709
- Parent:
- 1:64c1fd738059
merge
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
caoyuan9642 | 1:64c1fd738059 | 1 | /* |
caoyuan9642 | 1:64c1fd738059 | 2 | * AdaptiveAxis.h |
caoyuan9642 | 1:64c1fd738059 | 3 | * |
caoyuan9642 | 1:64c1fd738059 | 4 | * Created on: 2018Äê2ÔÂ24ÈÕ |
caoyuan9642 | 1:64c1fd738059 | 5 | * Author: caoyuan9642 |
caoyuan9642 | 1:64c1fd738059 | 6 | */ |
caoyuan9642 | 1:64c1fd738059 | 7 | |
caoyuan9642 | 1:64c1fd738059 | 8 | #ifndef PUSHTOGO_ADAPTIVEAXIS_H_ |
caoyuan9642 | 1:64c1fd738059 | 9 | #define PUSHTOGO_ADAPTIVEAXIS_H_ |
caoyuan9642 | 1:64c1fd738059 | 10 | |
caoyuan9642 | 1:64c1fd738059 | 11 | #include <Axis.h> |
caoyuan9642 | 1:64c1fd738059 | 12 | |
caoyuan9642 | 1:64c1fd738059 | 13 | /** |
caoyuan9642 | 1:64c1fd738059 | 14 | * Implements class Axis that allows different modes for slewing and tracking |
caoyuan9642 | 1:64c1fd738059 | 15 | */ |
caoyuan9642 | 1:64c1fd738059 | 16 | class AdaptiveAxis: public Axis |
caoyuan9642 | 1:64c1fd738059 | 17 | { |
caoyuan9642 | 1:64c1fd738059 | 18 | public: |
caoyuan9642 | 1:64c1fd738059 | 19 | AdaptiveAxis(double stepsPerDeg, StepperMotor *stepper, const char *name = |
caoyuan9642 | 1:64c1fd738059 | 20 | "Axis") : |
caoyuan9642 | 1:64c1fd738059 | 21 | Axis(stepsPerDeg, stepper, name) |
caoyuan9642 | 1:64c1fd738059 | 22 | { |
caoyuan9642 | 1:64c1fd738059 | 23 | idle_mode(); // Initialize as IDLE |
caoyuan9642 | 1:64c1fd738059 | 24 | } |
caoyuan9642 | 1:64c1fd738059 | 25 | virtual ~AdaptiveAxis() |
caoyuan9642 | 1:64c1fd738059 | 26 | { |
caoyuan9642 | 1:64c1fd738059 | 27 | } |
caoyuan9642 | 1:64c1fd738059 | 28 | |
caoyuan9642 | 1:64c1fd738059 | 29 | protected: |
caoyuan9642 | 1:64c1fd738059 | 30 | |
caoyuan9642 | 1:64c1fd738059 | 31 | void slew_mode(); |
caoyuan9642 | 1:64c1fd738059 | 32 | void track_mode(); |
caoyuan9642 | 1:64c1fd738059 | 33 | void correction_mode(); |
caoyuan9642 | 1:64c1fd738059 | 34 | void idle_mode(); |
caoyuan9642 | 1:64c1fd738059 | 35 | }; |
caoyuan9642 | 1:64c1fd738059 | 36 | |
caoyuan9642 | 1:64c1fd738059 | 37 | #endif /* PUSHTOGO_ADAPTIVEAXIS_H_ */ |
caoyuan9642 | 1:64c1fd738059 | 38 |