mbedを用いた制御学生の制御 / motorlib
Committer:
tknara
Date:
Tue Jan 19 11:53:16 2016 +0000
Revision:
1:727b2172d97c
Parent:
0:0f53faf3b186
ok

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tknara 0:0f53faf3b186 1 #include "Motor.h"
tknara 0:0f53faf3b186 2
tknara 0:0f53faf3b186 3 #include "mbed.h"
tknara 0:0f53faf3b186 4
tknara 1:727b2172d97c 5 MOTOR::MOTOR(PinName PWM, PinName fwd, PinName rev ,float period ,int select):
tknara 0:0f53faf3b186 6 pwm(PWM), cw(fwd), ccw(rev)
tknara 0:0f53faf3b186 7 {
tknara 0:0f53faf3b186 8 pwm.period(period);
tknara 0:0f53faf3b186 9 if(select>1) {
tknara 0:0f53faf3b186 10 mode = 1;
tknara 0:0f53faf3b186 11 pwm = 0.5;
tknara 0:0f53faf3b186 12 } else {
tknara 0:0f53faf3b186 13 mode = 0;
tknara 0:0f53faf3b186 14 pwm = 0;
tknara 0:0f53faf3b186 15 cw = 0;
tknara 0:0f53faf3b186 16 ccw = 0;
tknara 0:0f53faf3b186 17 }
tknara 0:0f53faf3b186 18
tknara 0:0f53faf3b186 19 }
tknara 1:727b2172d97c 20 void MOTOR::speed(float speed)
tknara 0:0f53faf3b186 21 {
tknara 0:0f53faf3b186 22 if(mode == 0) {
tknara 0:0f53faf3b186 23 cw = (speed > 0.0);
tknara 0:0f53faf3b186 24 ccw = (speed < 0.0);
tknara 0:0f53faf3b186 25 pwm = abs(speed);
tknara 0:0f53faf3b186 26 } else if(mode > 0) {
tknara 0:0f53faf3b186 27 pwm = 0.5+(speed*0.5);
tknara 0:0f53faf3b186 28 }
tknara 0:0f53faf3b186 29 }
tknara 0:0f53faf3b186 30