V1

Dependents:   VITI_motor_angle_1 VITI_motor_angle_2 VITI_motor_angle_3

Committer:
gr66
Date:
Thu May 21 17:42:47 2020 +0000
Revision:
0:1b8889c40a44
V1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gr66 0:1b8889c40a44 1 /* mbed simple H-bridge motor controller
gr66 0:1b8889c40a44 2 * Copyright (c) 2007-2010,
gr66 0:1b8889c40a44 3 *
gr66 0:1b8889c40a44 4
gr66 0:1b8889c40a44 5 */
gr66 0:1b8889c40a44 6
gr66 0:1b8889c40a44 7 #include "TB6549.h"
gr66 0:1b8889c40a44 8
gr66 0:1b8889c40a44 9 #include "mbed.h"
gr66 0:1b8889c40a44 10
gr66 0:1b8889c40a44 11 Motor::Motor(PinName pwm, PinName in1, PinName in2,PinName sb):
gr66 0:1b8889c40a44 12 _pwm(pwm), _in1(in1), _in2(in2), _sb(sb)
gr66 0:1b8889c40a44 13 {
gr66 0:1b8889c40a44 14
gr66 0:1b8889c40a44 15 // Set initial condition of PWM
gr66 0:1b8889c40a44 16 _pwm.period(0.001);
gr66 0:1b8889c40a44 17 _pwm = 0;
gr66 0:1b8889c40a44 18
gr66 0:1b8889c40a44 19 // Initial condition stand by
gr66 0:1b8889c40a44 20 _in1 = 0;
gr66 0:1b8889c40a44 21 _in2 = 0;
gr66 0:1b8889c40a44 22 _sb = 0;
gr66 0:1b8889c40a44 23 }
gr66 0:1b8889c40a44 24
gr66 0:1b8889c40a44 25 void Motor::speed(float speed)
gr66 0:1b8889c40a44 26 {
gr66 0:1b8889c40a44 27 if(speed > 0) {
gr66 0:1b8889c40a44 28 _in1=0;
gr66 0:1b8889c40a44 29 _in2=1;
gr66 0:1b8889c40a44 30 _sb=1;
gr66 0:1b8889c40a44 31 } else {
gr66 0:1b8889c40a44 32 _in1=1;
gr66 0:1b8889c40a44 33 _in2=0;
gr66 0:1b8889c40a44 34 _sb=1;
gr66 0:1b8889c40a44 35 }
gr66 0:1b8889c40a44 36 _pwm = abs(speed);
gr66 0:1b8889c40a44 37 }