2022_gorobo_Ateam
/
beenbag_shoot
program to shoot beenbags
arrcmbedをインクルードしてください。
Diff: main.cpp
- Revision:
- 6:7dcc827bbe96
- Parent:
- 5:1433a73c2692
- Child:
- 7:0e3a6da2e175
--- a/main.cpp Fri Jan 14 14:48:42 2022 +0000 +++ b/main.cpp Fri Jan 14 15:12:45 2022 +0000 @@ -12,10 +12,14 @@ Motor motor_revolver(PB_13,PB_14);//リボルバーモーター Motor motor_shoot(PA_11,PB_1);//発射機構モーター +PwmOut servo1(PB_8); //サーボ +PwmOut servo2(PB_9); + int shoot_able;//発射フェーズ 0:待機 1:引き動作 2:リボルバー1/6回転 3:発射 int turn_able;//回転フェーズ 0:待機 1:1/6回転 double revolver_pwm = 0.1;//リボルバー回転速度 +int theta = 500;//サーボ回転角度 double interval = 0.1; int roricon = 0; @@ -61,6 +65,9 @@ int main(){ int count = 1;//何発目か + servo.period_us(20000); + servo.period_us(20000); + slave.addCMD(2,interrupt); while(1){ switch (shoot_able){ @@ -80,6 +87,7 @@ break; case 2: + wait(5); //リボルバー回転 turn_able = 1; revolver(count); @@ -90,10 +98,16 @@ break; case 3: + wait(5); //発射動作コードをここに書く! + servo1.pulsewidth_us(theta); + servo2.pulsewidth_us(theta); shoot_able = 0; printf("finished shooting %d\n",count); count ++; + wait(5); + servo1.pulsewidth_us(0); + servo2.pulsewidth_us(0); break; } }