Rauno U
/
Miisu
Six crescent shaped legs
EncoderMotor.hpp@3:2235787e78c4, 2016-03-29 (annotated)
- Committer:
- sim642
- Date:
- Tue Mar 29 12:54:12 2016 +0000
- Revision:
- 3:2235787e78c4
- Child:
- 4:4d54794b99a5
First working EncoderMotor
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sim642 | 3:2235787e78c4 | 1 | #ifndef ENCODER_MOTOR_H |
sim642 | 3:2235787e78c4 | 2 | #define ENCODER_MOTOR_H |
sim642 | 3:2235787e78c4 | 3 | |
sim642 | 3:2235787e78c4 | 4 | #include "Motor.hpp" |
sim642 | 3:2235787e78c4 | 5 | #include "Encoder.hpp" |
sim642 | 3:2235787e78c4 | 6 | #include "ErrorController.hpp" |
sim642 | 3:2235787e78c4 | 7 | |
sim642 | 3:2235787e78c4 | 8 | class EncoderMotor : public Motor |
sim642 | 3:2235787e78c4 | 9 | { |
sim642 | 3:2235787e78c4 | 10 | public: |
sim642 | 3:2235787e78c4 | 11 | EncoderMotor(PinName pwmPin, PinName dir1Pin, PinName dir2Pin, Encoder &nEncoder, ErrorController &nEc); |
sim642 | 3:2235787e78c4 | 12 | |
sim642 | 3:2235787e78c4 | 13 | void setup(); |
sim642 | 3:2235787e78c4 | 14 | |
sim642 | 3:2235787e78c4 | 15 | virtual void drive(float power); |
sim642 | 3:2235787e78c4 | 16 | |
sim642 | 3:2235787e78c4 | 17 | long getSpeed(); |
sim642 | 3:2235787e78c4 | 18 | |
sim642 | 3:2235787e78c4 | 19 | //private: |
sim642 | 3:2235787e78c4 | 20 | void tick(); |
sim642 | 3:2235787e78c4 | 21 | |
sim642 | 3:2235787e78c4 | 22 | Encoder &encoder; |
sim642 | 3:2235787e78c4 | 23 | |
sim642 | 3:2235787e78c4 | 24 | Ticker ticker; |
sim642 | 3:2235787e78c4 | 25 | float setPower; |
sim642 | 3:2235787e78c4 | 26 | long prevCount; |
sim642 | 3:2235787e78c4 | 27 | ErrorController &ec; |
sim642 | 3:2235787e78c4 | 28 | volatile long dCount; |
sim642 | 3:2235787e78c4 | 29 | |
sim642 | 3:2235787e78c4 | 30 | float out; |
sim642 | 3:2235787e78c4 | 31 | }; |
sim642 | 3:2235787e78c4 | 32 | |
sim642 | 3:2235787e78c4 | 33 | #endif // ENCODER_MOTOR_H |