zhouhang shao
/
test
test
Diff: motor.h
- Revision:
- 2:b78dfa2afe92
- Child:
- 6:9f698d1b2996
diff -r 11970e541ecf -r b78dfa2afe92 motor.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/motor.h Sat May 06 23:10:06 2017 +0000 @@ -0,0 +1,35 @@ +#ifndef MOTOR_H +#define MOTOR_H +#include "mbed.h" + +class Motor { +public: + Motor(PinName pwm, PinName dir); + + // Define speed as float value between -1.0 and 1.0 + void speed(float speed); + + // Stop the motor without breaking mechanism + void stop(void); + + // Override operator for setting motor speed + void operator = (float speed) { + Motor::speed(speed); + } + + // Getter method to retrieve the current speed + float read(){ + return curr_speed; + } + +private: + volatile float curr_speed; + PwmOut pwm_pin; + DigitalOut dir; +}; + +// Declaring as extern to enable global scope +extern Motor leftMotor; +extern Motor rightMotor; + +#endif \ No newline at end of file