a
TB6612.cpp@5:096c2484805d, 2021-11-06 (annotated)
- Committer:
- miyajitakenari
- Date:
- Sat Nov 06 03:07:17 2021 +0000
- Revision:
- 5:096c2484805d
- Parent:
- 4:95d5e9ee8c15
a
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jksoft | 0:810f315ba3dc | 1 | #include "TB6612.h" |
jksoft | 0:810f315ba3dc | 2 | |
jksoft | 0:810f315ba3dc | 3 | // TB6612 Class Constructor |
jksoft | 0:810f315ba3dc | 4 | TB6612::TB6612(PinName pwm, PinName fwd, PinName rev): |
jksoft | 0:810f315ba3dc | 5 | _pwm(pwm), _fwd(fwd), _rev(rev) { |
jksoft | 0:810f315ba3dc | 6 | |
jksoft | 0:810f315ba3dc | 7 | _fwd = 0; |
jksoft | 0:810f315ba3dc | 8 | _rev = 0; |
jksoft | 0:810f315ba3dc | 9 | _pwm = 0.0; |
jksoft | 4:95d5e9ee8c15 | 10 | stat = 0; |
jksoft | 0:810f315ba3dc | 11 | _pwm.period(0.001); |
jksoft | 0:810f315ba3dc | 12 | |
jksoft | 0:810f315ba3dc | 13 | } |
jksoft | 0:810f315ba3dc | 14 | |
jksoft | 0:810f315ba3dc | 15 | // Speed Control |
jksoft | 0:810f315ba3dc | 16 | // arg |
jksoft | 0:810f315ba3dc | 17 | // float speed -1.0 - 0.0 - 1.0 |
miyajitakenari | 5:096c2484805d | 18 | float TB6612::speed(double speed) { |
jksoft | 0:810f315ba3dc | 19 | |
jksoft | 0:810f315ba3dc | 20 | if( speed > 0.0 ) |
jksoft | 0:810f315ba3dc | 21 | { |
jksoft | 0:810f315ba3dc | 22 | _pwm = speed; |
jksoft | 0:810f315ba3dc | 23 | _fwd = 1; |
jksoft | 0:810f315ba3dc | 24 | _rev = 0; |
jksoft | 4:95d5e9ee8c15 | 25 | stat = 1; |
jksoft | 0:810f315ba3dc | 26 | } |
jksoft | 0:810f315ba3dc | 27 | else if( speed < 0.0 ) |
jksoft | 0:810f315ba3dc | 28 | { |
jksoft | 0:810f315ba3dc | 29 | _pwm = -speed; |
jksoft | 0:810f315ba3dc | 30 | _fwd = 0; |
jksoft | 0:810f315ba3dc | 31 | _rev = 1; |
jksoft | 4:95d5e9ee8c15 | 32 | stat = -1; |
jksoft | 0:810f315ba3dc | 33 | } |
jksoft | 0:810f315ba3dc | 34 | else |
jksoft | 0:810f315ba3dc | 35 | { |
jksoft | 0:810f315ba3dc | 36 | _fwd = 1; |
jksoft | 0:810f315ba3dc | 37 | _rev = 1; |
jksoft | 4:95d5e9ee8c15 | 38 | stat = 0; |
jksoft | 0:810f315ba3dc | 39 | } |
jksoft | 2:ad4e7374e5c1 | 40 | return speed==0 ? 0 : speed > 0 ? 1 : -1; |
jksoft | 2:ad4e7374e5c1 | 41 | } |