test

Dependencies:   RemoteIR mbed

Revision:
2:b78dfa2afe92
Child:
6:9f698d1b2996
--- /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