V1
Dependents: VITI_motor_angle_1 VITI_motor_angle_2 VITI_motor_angle_3
TB6549.cpp@0:1b8889c40a44, 2020-05-21 (annotated)
- Committer:
- gr66
- Date:
- Thu May 21 17:42:47 2020 +0000
- Revision:
- 0:1b8889c40a44
V1
Who changed what in which revision?
User | Revision | Line number | New 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 | } |