基本クラス
Dependents: 300_PS3com Quadrifoglio_PS3COM
Master.cpp@0:e2da5742a718, 2022-06-11 (annotated)
- Committer:
- piroro4560
- Date:
- Sat Jun 11 13:24:51 2022 +0000
- Revision:
- 0:e2da5742a718
- Child:
- 1:60319e61775d
make library
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
piroro4560 | 0:e2da5742a718 | 1 | #include "Master.h" |
piroro4560 | 0:e2da5742a718 | 2 | |
piroro4560 | 0:e2da5742a718 | 3 | Master::Master() : |
piroro4560 | 0:e2da5742a718 | 4 | pc(USBTX, USBRX, 115200) |
piroro4560 | 0:e2da5742a718 | 5 | ,shot(kicker) |
piroro4560 | 0:e2da5742a718 | 6 | ,drib(ESCpin) |
piroro4560 | 0:e2da5742a718 | 7 | { |
piroro4560 | 0:e2da5742a718 | 8 | motor[0] = new KohiMD(PA_15); |
piroro4560 | 0:e2da5742a718 | 9 | motor[1] = new KohiMD(PA_6); |
piroro4560 | 0:e2da5742a718 | 10 | motor[2] = new KohiMD(PA_7); |
piroro4560 | 0:e2da5742a718 | 11 | motor[3] = new KohiMD(PB_6); |
piroro4560 | 0:e2da5742a718 | 12 | shot.setkickperiod(2.0); |
piroro4560 | 0:e2da5742a718 | 13 | shot.setoutputtime(0.1); |
piroro4560 | 0:e2da5742a718 | 14 | drib.setspeed(0.0); |
piroro4560 | 0:e2da5742a718 | 15 | } |
piroro4560 | 0:e2da5742a718 | 16 | |
piroro4560 | 0:e2da5742a718 | 17 | void Master::SetPS3Address(bool *button_, uint8_t *trigger_, uint8_t *stick_) |
piroro4560 | 0:e2da5742a718 | 18 | { |
piroro4560 | 0:e2da5742a718 | 19 | button = button_; |
piroro4560 | 0:e2da5742a718 | 20 | stick = stick_; |
piroro4560 | 0:e2da5742a718 | 21 | trigger = trigger_; |
piroro4560 | 0:e2da5742a718 | 22 | } |
piroro4560 | 0:e2da5742a718 | 23 | |
piroro4560 | 0:e2da5742a718 | 24 | void Master::PS3Com() |
piroro4560 | 0:e2da5742a718 | 25 | { |
piroro4560 | 0:e2da5742a718 | 26 | for(int i=0; i < 4; i++) { |
piroro4560 | 0:e2da5742a718 | 27 | if (button[i+4]) { |
piroro4560 | 0:e2da5742a718 | 28 | pwm = 0.5; |
piroro4560 | 0:e2da5742a718 | 29 | } else if (button[i+4+4]){ |
piroro4560 | 0:e2da5742a718 | 30 | pwm = -0.5; |
piroro4560 | 0:e2da5742a718 | 31 | } else { |
piroro4560 | 0:e2da5742a718 | 32 | pwm = 0; |
piroro4560 | 0:e2da5742a718 | 33 | } |
piroro4560 | 0:e2da5742a718 | 34 | // md[i].setSpeed(pwm); |
piroro4560 | 0:e2da5742a718 | 35 | SetValueMotor(i, 0.2); |
piroro4560 | 0:e2da5742a718 | 36 | } |
piroro4560 | 0:e2da5742a718 | 37 | if (button[2]) Shot(); |
piroro4560 | 0:e2da5742a718 | 38 | if (button[3]) Dribble(0.6); |
piroro4560 | 0:e2da5742a718 | 39 | } |
piroro4560 | 0:e2da5742a718 | 40 | |
piroro4560 | 0:e2da5742a718 | 41 | void Master::Shot() |
piroro4560 | 0:e2da5742a718 | 42 | { |
piroro4560 | 0:e2da5742a718 | 43 | shot.outPut(); |
piroro4560 | 0:e2da5742a718 | 44 | } |
piroro4560 | 0:e2da5742a718 | 45 | |
piroro4560 | 0:e2da5742a718 | 46 | void Master::Dribble(float power) |
piroro4560 | 0:e2da5742a718 | 47 | { |
piroro4560 | 0:e2da5742a718 | 48 | drib.setspeed(power); |
piroro4560 | 0:e2da5742a718 | 49 | } |
piroro4560 | 0:e2da5742a718 | 50 | |
piroro4560 | 0:e2da5742a718 | 51 | void Master::SetValueMotor(int num, double val) |
piroro4560 | 0:e2da5742a718 | 52 | { |
piroro4560 | 0:e2da5742a718 | 53 | motor[num]->setSpeed(val); |
piroro4560 | 0:e2da5742a718 | 54 | } |