For Rotaryencoder and Motor
Rotaryencoder.hpp@0:b1487fd792c9, 2022-07-16 (annotated)
- Committer:
- m2130
- Date:
- Sat Jul 16 06:38:44 2022 +0000
- Revision:
- 0:b1487fd792c9
For Rotaryencoder and Motor;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
m2130 | 0:b1487fd792c9 | 1 | #ifndef Rorikon_H |
m2130 | 0:b1487fd792c9 | 2 | #define Rorikon_H |
m2130 | 0:b1487fd792c9 | 3 | #include "mbed.h" |
m2130 | 0:b1487fd792c9 | 4 | #define pi 3.1415926535897932384626 |
m2130 | 0:b1487fd792c9 | 5 | |
m2130 | 0:b1487fd792c9 | 6 | class Rotary{ |
m2130 | 0:b1487fd792c9 | 7 | public: |
m2130 | 0:b1487fd792c9 | 8 | Rotary(PinName pinA, PinName pinB, double diameter, double resolusion, double deltat); |
m2130 | 0:b1487fd792c9 | 9 | double pulse_get(); |
m2130 | 0:b1487fd792c9 | 10 | double theta_get(); |
m2130 | 0:b1487fd792c9 | 11 | double speed_get(); |
m2130 | 0:b1487fd792c9 | 12 | double angularspd_get(); |
m2130 | 0:b1487fd792c9 | 13 | void reset(); |
m2130 | 0:b1487fd792c9 | 14 | ~Rotary(); |
m2130 | 0:b1487fd792c9 | 15 | private: |
m2130 | 0:b1487fd792c9 | 16 | InterruptIn *pin_A; |
m2130 | 0:b1487fd792c9 | 17 | InterruptIn *pin_B; |
m2130 | 0:b1487fd792c9 | 18 | double pulse[2]; |
m2130 | 0:b1487fd792c9 | 19 | double theta[2]; |
m2130 | 0:b1487fd792c9 | 20 | double cir; |
m2130 | 0:b1487fd792c9 | 21 | double res; |
m2130 | 0:b1487fd792c9 | 22 | double dt; |
m2130 | 0:b1487fd792c9 | 23 | double spd; |
m2130 | 0:b1487fd792c9 | 24 | double anguspd; |
m2130 | 0:b1487fd792c9 | 25 | void riseA(void); |
m2130 | 0:b1487fd792c9 | 26 | void fallA(void); |
m2130 | 0:b1487fd792c9 | 27 | void riseB(void); |
m2130 | 0:b1487fd792c9 | 28 | void fallB(void); |
m2130 | 0:b1487fd792c9 | 29 | }; |
m2130 | 0:b1487fd792c9 | 30 | #endif |