cansat_B 2019 / Mbed 2 deprecated GPSと走行の統合 1

Dependencies:   mbed

Committer:
saeichi
Date:
Thu Dec 05 00:17:03 2019 +0000
Revision:
6:892eb32f6dc3
GPSGO;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
saeichi 6:892eb32f6dc3 1 /**
saeichi 6:892eb32f6dc3 2 * Motor Driver TB6612 Control Library
saeichi 6:892eb32f6dc3 3 *
saeichi 6:892eb32f6dc3 4 * -- TB6612 is a device of the TOSHIBA.
saeichi 6:892eb32f6dc3 5 *
saeichi 6:892eb32f6dc3 6 * Copyright (C) 2012 Junichi Katsu (JKSOFT)
saeichi 6:892eb32f6dc3 7 */
saeichi 6:892eb32f6dc3 8
saeichi 6:892eb32f6dc3 9
saeichi 6:892eb32f6dc3 10 #include "TB6612.h"
saeichi 6:892eb32f6dc3 11
saeichi 6:892eb32f6dc3 12 // TB6612 Class Constructor
saeichi 6:892eb32f6dc3 13 TB6612::TB6612(PinName pwm, PinName fwd, PinName rev):
saeichi 6:892eb32f6dc3 14 _pwm(pwm), _fwd(fwd), _rev(rev) {
saeichi 6:892eb32f6dc3 15
saeichi 6:892eb32f6dc3 16 _fwd = 0;
saeichi 6:892eb32f6dc3 17 _rev = 0;
saeichi 6:892eb32f6dc3 18 _pwm = 0.0;
saeichi 6:892eb32f6dc3 19 _pwm.period(0.001);
saeichi 6:892eb32f6dc3 20 }
saeichi 6:892eb32f6dc3 21
saeichi 6:892eb32f6dc3 22 // Speed Control
saeichi 6:892eb32f6dc3 23 // arg
saeichi 6:892eb32f6dc3 24 // int speed -100 -- 0 -- 100
saeichi 6:892eb32f6dc3 25 void TB6612::speed(int speed) {
saeichi 6:892eb32f6dc3 26
saeichi 6:892eb32f6dc3 27 if( speed > 0 )
saeichi 6:892eb32f6dc3 28 {
saeichi 6:892eb32f6dc3 29 _pwm = ((float)speed) / 100.0;
saeichi 6:892eb32f6dc3 30 _fwd = 1;
saeichi 6:892eb32f6dc3 31 _rev = 0;
saeichi 6:892eb32f6dc3 32 }
saeichi 6:892eb32f6dc3 33 else if( speed < 0 )
saeichi 6:892eb32f6dc3 34 {
saeichi 6:892eb32f6dc3 35 _pwm = -((float)speed) / 100.0;
saeichi 6:892eb32f6dc3 36 _fwd = 0;
saeichi 6:892eb32f6dc3 37 _rev = 1;
saeichi 6:892eb32f6dc3 38 }
saeichi 6:892eb32f6dc3 39 else
saeichi 6:892eb32f6dc3 40 {
saeichi 6:892eb32f6dc3 41 _fwd = 1;
saeichi 6:892eb32f6dc3 42 _rev = 1;
saeichi 6:892eb32f6dc3 43 }
saeichi 6:892eb32f6dc3 44 }
saeichi 6:892eb32f6dc3 45
saeichi 6:892eb32f6dc3 46
saeichi 6:892eb32f6dc3 47 // Speed Control with time-out
saeichi 6:892eb32f6dc3 48 // arg
saeichi 6:892eb32f6dc3 49 // int speed -100 -- 0 -- 100
saeichi 6:892eb32f6dc3 50 // int time 0
saeichi 6:892eb32f6dc3 51 void TB6612::move(int sspeed , int time)
saeichi 6:892eb32f6dc3 52 {
saeichi 6:892eb32f6dc3 53 speed(sspeed);
saeichi 6:892eb32f6dc3 54 wait_ms(time);
saeichi 6:892eb32f6dc3 55 }
saeichi 6:892eb32f6dc3 56
saeichi 6:892eb32f6dc3 57