Li Weiyi
/
Cube
Microduino的cube小车。
Microduino_Motor.h@2:70ca3e685cca, 2016-05-25 (annotated)
- Committer:
- lixianyu
- Date:
- Wed May 25 13:25:09 2016 +0000
- Revision:
- 2:70ca3e685cca
- Parent:
- 1:758ccab13947
- Child:
- 3:e4ac7c1a14de
???????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lixianyu | 1:758ccab13947 | 1 | #ifndef Motor_h |
lixianyu | 1:758ccab13947 | 2 | #define Motor_h |
lixianyu | 1:758ccab13947 | 3 | |
lixianyu | 1:758ccab13947 | 4 | //#include "Arduino.h" |
lixianyu | 1:758ccab13947 | 5 | #include "mbed.h" |
lixianyu | 1:758ccab13947 | 6 | |
lixianyu | 1:758ccab13947 | 7 | #define CHAN_LEFT 0 |
lixianyu | 1:758ccab13947 | 8 | #define CHAN_RIGHT 1 |
lixianyu | 1:758ccab13947 | 9 | |
lixianyu | 1:758ccab13947 | 10 | typedef struct { |
lixianyu | 1:758ccab13947 | 11 | uint8_t nbr_A :6 ; |
lixianyu | 1:758ccab13947 | 12 | uint8_t nbr_B :6 ; |
lixianyu | 1:758ccab13947 | 13 | } MotorPin_t ; |
lixianyu | 1:758ccab13947 | 14 | |
lixianyu | 1:758ccab13947 | 15 | typedef struct { |
lixianyu | 1:758ccab13947 | 16 | MotorPin_t Pin; |
lixianyu | 1:758ccab13947 | 17 | } motor_t; |
lixianyu | 1:758ccab13947 | 18 | |
lixianyu | 1:758ccab13947 | 19 | class Motor |
lixianyu | 1:758ccab13947 | 20 | { |
lixianyu | 1:758ccab13947 | 21 | public: |
lixianyu | 2:70ca3e685cca | 22 | Motor(PinName _motor_pinA, PinName _motor_pinB); |
lixianyu | 1:758ccab13947 | 23 | void Fix(float _fix); |
lixianyu | 1:758ccab13947 | 24 | void Driver(int16_t _motor_driver); |
lixianyu | 1:758ccab13947 | 25 | void Free(); |
lixianyu | 1:758ccab13947 | 26 | void Brake(); |
lixianyu | 1:758ccab13947 | 27 | int16_t GetData(int16_t _throttle, int16_t _steering, bool _dir); |
lixianyu | 1:758ccab13947 | 28 | private: |
lixianyu | 1:758ccab13947 | 29 | uint8_t motorIndex; // index into the channel data for this key |
lixianyu | 1:758ccab13947 | 30 | float fix; |
lixianyu | 1:758ccab13947 | 31 | int16_t _motor_vol; |
lixianyu | 2:70ca3e685cca | 32 | protected: |
lixianyu | 2:70ca3e685cca | 33 | gpio_t gpioA; |
lixianyu | 2:70ca3e685cca | 34 | gpio_t gpioB; |
lixianyu | 1:758ccab13947 | 35 | }; |
lixianyu | 1:758ccab13947 | 36 | |
lixianyu | 1:758ccab13947 | 37 | #endif |