all ok noMU2

Dependencies:   mbed mbedTimer SDFileSystem MU2 GPS

Revision:
6:b7bf39bc3487
Parent:
4:0d087e3f731d
Child:
8:6b835a82b1eb
--- a/main.cpp	Tue Aug 06 08:54:58 2019 +0000
+++ b/main.cpp	Wed Aug 07 10:03:17 2019 +0000
@@ -23,10 +23,10 @@
 int main()
 {
 
-    wait(3);
+    wait(0.1);//起動してからちょっと待つ
 
     //FILE* fp1= fopen("/sd/cansat/log3.txt", "w");
-    FILE* fp2= fopen("/sd/cansat/gpsdata11.csv", "w");
+    FILE* fp2= fopen("/sd/cansat/gpsdata1000.csv", "w");
 
     /*if(fp1 == NULL || fp2 == NULL)
     {
@@ -42,7 +42,7 @@
     //fprintf(fp1, "Fire!!\r\n");
     //FIRE=1;
     myled=1;//テストようにLED光らせてる
-    wait(5);//溶断にかかる時間TBD秒
+    wait(3);//溶断にかかる時間TBD秒
     //FIRE=0;
     myled=0;
     
@@ -71,7 +71,7 @@
                 if((getGPS[5]=='G')&&(getGPS[6]=='A')) 
                 {
                     
-                        MuPort.send(getGPS);
+                    MuPort.send(getGPS);
                     
                     /*if(fp == NULL) {
                         error("Could not open file for write\n");
@@ -80,14 +80,14 @@
                     fprintf(fp2, "%s\n",getGPS);
                     //fclose(fp);
                     
-                    wait(0.1);
+                    wait(1.0);
                     timer++;
                 }
 
                 i=0;
             }
             i++;
-            if(timer>10)//落下開始してからTBD秒後whileを抜ける.
+            if(timer>15)//落下開始してからTBD秒後whileを抜ける.
             {
                 break;
             }
@@ -97,6 +97,8 @@
         //fclose(fp);
     }
     
+    timer=0;//モーター時間で止めるよう
+    
     while(1) 
     {
         myled3=0;
@@ -120,19 +122,61 @@
                     fprintf(fp2, "%s\n",getGPS);
                     //fclose(fp);
                     wait(0.1);
+                    timer++;
                 }
 
                 i=0;
             }
             i++;
-            inlet.Close(0.9);
+            if(timer>30)
+            {
+            break;    
+            }
+            inlet.Close(1.1);//1より大きい引数にしておけばモーターはずっと回ってる.
         }
 
         // wait(1);
         //fclose(fp);
     }
     
+    //何もせずGPS信号を発する
     
+    while(1) 
+    {
+        myled3=1;
+        myled2=1;
+        if(gps.readable()) 
+        {
+            recvGPS=gps.getc();
+            getGPS[i]=recvGPS;
+
+            if(getGPS[i]=='\n')
+            {
+
+                if((getGPS[5]=='G')&&(getGPS[6]=='A')) 
+                {
+                    MuPort.send(getGPS);
+                    
+                    /*if(fp == NULL) {
+                        error("Could not open file for write\n");
+                    }*/
+
+                    fprintf(fp2, "%s\n",getGPS);
+                    //fclose(fp);
+                    wait(0.1);
+                    timer++;
+                }
+
+                i=0;
+            }
+            i++;
+        }
+
+        // wait(1);
+        //fclose(fp);
+    }
+    
+
     //fclose(fp1);
     fclose(fp2);