2017ロボコンはやとブーメランプログラム

Dependencies:   PID QEI ikarashiMDC recieveController omni

Revision:
17:311aed3cad15
Parent:
14:5cc44bec9cfc
Child:
18:4b629221c215
--- a/Spiral.cpp	Fri Oct 06 21:59:16 2017 +0900
+++ b/Spiral.cpp	Sun Oct 15 13:42:12 2017 +0900
@@ -1,29 +1,40 @@
 #include "Spiral.h"
 
-Spiral::Spiral(ikarashiMDC* spiralMotor_)
+Spiral::Spiral(ikarashiMDC *spiralMotor_)
 {
+  beltSpeed = 0;
+  spiralSpeed = 0;
   spiralMotor = spiralMotor_;
-  spiralMotor->braking = true;
   spiralLimit = new InterruptIn(PB_12);
   spiralLimit->mode(PullUp);
   spiralLimit->rise(this,&Spiral::stopRotation);
   rotating = false;
+  firing = false;
+  spiralLimit->enable_irq();
 }
 
 int Spiral::rotate()
 {
   if(rotating)
     return 1;
+  spiralSpeed=0.4;
   spiralMotor->setSpeed(0.4);
   rotating = true;
-  if(spiralLimit->read() == false)
-  {
-  }
+  firing = true;
   return false;
 }
 
 void Spiral::stopRotation()
 {
-    spiralMotor->setSpeed(0);
-    rotating = false;
+  if (!rotating)return;
+  spiralSpeed=0;
+  spiralMotor->setSpeed(0);
+  beltSpeed=-0.8;
+  rotating = false;
+  beltTime.attach(callback(this,&Spiral::beltStop),0.6);
 }
+
+void Spiral::beltStop(){
+  beltSpeed=0;
+  firing = false;
+}