Motor

Dependents:   Nucleo_spi 2015_denziben_i2c_S2 Nucleo_Motor Nucleo_Motor ... more

Committer:
kikoaac
Date:
Wed Sep 23 06:01:10 2015 +0000
Revision:
3:dea2df71cb97
Parent:
1:4ab6e9768847
Child:
4:56a1159c881c
???????
;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kikoaac 0:1252cd3b995f 1
kikoaac 1:4ab6e9768847 2 #ifndef Motor_H
kikoaac 1:4ab6e9768847 3 #define Motor_H
kikoaac 0:1252cd3b995f 4
kikoaac 0:1252cd3b995f 5 #include "mbed.h"
kikoaac 0:1252cd3b995f 6 #define Front 1
kikoaac 0:1252cd3b995f 7 #define Back 2
kikoaac 0:1252cd3b995f 8 #define Stop 3
kikoaac 0:1252cd3b995f 9 #define Free 4
kikoaac 0:1252cd3b995f 10 class Motor {
kikoaac 3:dea2df71cb97 11 protected : PinName Pin[5];
kikoaac 3:dea2df71cb97 12 Motor(const Motor& m);
kikoaac 3:dea2df71cb97 13 Motor& operator=(const Motor &m) {
kikoaac 3:dea2df71cb97 14 return *this;
kikoaac 3:dea2df71cb97 15 }
kikoaac 0:1252cd3b995f 16 public:
kikoaac 0:1252cd3b995f 17
kikoaac 3:dea2df71cb97 18 Motor(PinName _pin_h1, PinName _pin_g2, PinName _pin_g1, PinName _pin_h2,PinName _pwm);
kikoaac 3:dea2df71cb97 19
kikoaac 3:dea2df71cb97 20
kikoaac 0:1252cd3b995f 21 Motor& operator= (float duty)
kikoaac 0:1252cd3b995f 22 {
kikoaac 3:dea2df71cb97 23 if(duty<-0.00001F)
kikoaac 0:1252cd3b995f 24 {
kikoaac 0:1252cd3b995f 25 duty*=-1;
kikoaac 1:4ab6e9768847 26 run(Back,duty);
kikoaac 0:1252cd3b995f 27 }
kikoaac 3:dea2df71cb97 28 else if(float(duty)>0.00001F)
kikoaac 0:1252cd3b995f 29 {
kikoaac 1:4ab6e9768847 30 run(Front,duty);
kikoaac 0:1252cd3b995f 31 }
kikoaac 3:dea2df71cb97 32 else run(Stop,duty);
kikoaac 0:1252cd3b995f 33 return *this;
kikoaac 0:1252cd3b995f 34 }
kikoaac 0:1252cd3b995f 35 void run(int i,float duty);
kikoaac 0:1252cd3b995f 36 float min,max;
kikoaac 3:dea2df71cb97 37 void duty_max(float Max){max=Max;}
kikoaac 3:dea2df71cb97 38 void duty_min(float Min){min=Min;}
kikoaac 3:dea2df71cb97 39 float getduty()
kikoaac 3:dea2df71cb97 40 {
kikoaac 3:dea2df71cb97 41 float a = PwmPin.read();
kikoaac 3:dea2df71cb97 42 return a;
kikoaac 3:dea2df71cb97 43 }
kikoaac 0:1252cd3b995f 44 private:
kikoaac 3:dea2df71cb97 45
kikoaac 1:4ab6e9768847 46 int state;
kikoaac 0:1252cd3b995f 47 float Duty;
kikoaac 0:1252cd3b995f 48 BusOut motor;
kikoaac 0:1252cd3b995f 49 PwmOut PwmPin;
kikoaac 0:1252cd3b995f 50 };
kikoaac 0:1252cd3b995f 51
kikoaac 0:1252cd3b995f 52 #endif /* PID_H */