all ok noMU2

Dependencies:   mbed mbedTimer SDFileSystem MU2 GPS

Committer:
Nerosho
Date:
Sat Aug 03 11:07:03 2019 +0000
Revision:
2:d6dc5c2224cc
Parent:
1:a8772ca26d1b
Child:
3:4f1bac105598
ver2_3

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Nerosho 0:d0f3991839ec 1 #include "mbed.h"
Nerosho 0:d0f3991839ec 2 #include "MU2.h"
Nerosho 0:d0f3991839ec 3 #include "SDFileSystem.h"
Nerosho 2:d6dc5c2224cc 4 //#include "GPS.h"
Nerosho 1:a8772ca26d1b 5
Nerosho 1:a8772ca26d1b 6 MU2 MuPort(p9,p10);
Nerosho 1:a8772ca26d1b 7 SDFileSystem sd(p5, p6, p7, p8, "sd");
Nerosho 2:d6dc5c2224cc 8 //GPS gps(p13,p14);
Nerosho 2:d6dc5c2224cc 9 Serial gps(p13,p14); //tx, rx
Nerosho 2:d6dc5c2224cc 10
Nerosho 0:d0f3991839ec 11
Nerosho 1:a8772ca26d1b 12 DigitalIn flight(p21); //フライトピン
Nerosho 1:a8772ca26d1b 13 DigitalOut FIRE(p26); //溶断
Nerosho 1:a8772ca26d1b 14
Nerosho 1:a8772ca26d1b 15 DigitalOut myled(LED1);
Nerosho 1:a8772ca26d1b 16 DigitalOut myled3(LED3);
Nerosho 1:a8772ca26d1b 17 DigitalOut myled4(LED4);
Nerosho 0:d0f3991839ec 18
Nerosho 0:d0f3991839ec 19 int main()
Nerosho 0:d0f3991839ec 20 {
Nerosho 2:d6dc5c2224cc 21
Nerosho 1:a8772ca26d1b 22 wait(3);
Nerosho 0:d0f3991839ec 23
Nerosho 2:d6dc5c2224cc 24 //FILE* fp1= fopen("/sd/cansat/log3.txt", "w");
Nerosho 2:d6dc5c2224cc 25 FILE* fp2= fopen("/sd/cansat/gpsdata10.csv", "w");
Nerosho 1:a8772ca26d1b 26
Nerosho 2:d6dc5c2224cc 27 /*if(fp1 == NULL || fp2 == NULL)
Nerosho 2:d6dc5c2224cc 28 {
Nerosho 2:d6dc5c2224cc 29 (fp1 == NULL) ? fprintf(stderr, "fname1 open error.\n") : fclose(fp1);
Nerosho 2:d6dc5c2224cc 30 (fp2 == NULL) ? fprintf(stderr, "fname2 open error.\n") : fclose(fp2);
Nerosho 2:d6dc5c2224cc 31 return -1;
Nerosho 2:d6dc5c2224cc 32 }*/
Nerosho 2:d6dc5c2224cc 33
Nerosho 2:d6dc5c2224cc 34
Nerosho 2:d6dc5c2224cc 35
Nerosho 2:d6dc5c2224cc 36 //fprintf(fp1, "CanSat start!\r\n");
Nerosho 0:d0f3991839ec 37
Nerosho 1:a8772ca26d1b 38 while(1) { //溶断機構
Nerosho 1:a8772ca26d1b 39 if (flight==1) {
Nerosho 1:a8772ca26d1b 40 wait(2);
Nerosho 0:d0f3991839ec 41 }
Nerosho 0:d0f3991839ec 42
Nerosho 1:a8772ca26d1b 43 else {
Nerosho 2:d6dc5c2224cc 44 //fprintf(fp1, "Fire!!\r\n");
Nerosho 1:a8772ca26d1b 45 //FIRE=1;
Nerosho 2:d6dc5c2224cc 46 myled=1;//テストようにLED光らせてる
Nerosho 2:d6dc5c2224cc 47 wait(5);//溶断にかかる時間TBD秒
Nerosho 2:d6dc5c2224cc 48 //FIRE=0;
Nerosho 1:a8772ca26d1b 49 myled=0;
Nerosho 1:a8772ca26d1b 50 break;
Nerosho 1:a8772ca26d1b 51 }
Nerosho 1:a8772ca26d1b 52 }
Nerosho 0:d0f3991839ec 53
Nerosho 1:a8772ca26d1b 54
Nerosho 0:d0f3991839ec 55
Nerosho 2:d6dc5c2224cc 56 gps.baud(9600);
Nerosho 2:d6dc5c2224cc 57 char recvGPS=0;
Nerosho 2:d6dc5c2224cc 58 char getGPS[128];
Nerosho 2:d6dc5c2224cc 59 int i=0;
Nerosho 2:d6dc5c2224cc 60
Nerosho 2:d6dc5c2224cc 61 //fprintf(fp1, "GPS start!\r\n");
Nerosho 2:d6dc5c2224cc 62
Nerosho 0:d0f3991839ec 63
Nerosho 0:d0f3991839ec 64
Nerosho 0:d0f3991839ec 65
Nerosho 2:d6dc5c2224cc 66 while(1) {
Nerosho 2:d6dc5c2224cc 67 if(gps.readable()) {
Nerosho 2:d6dc5c2224cc 68
Nerosho 2:d6dc5c2224cc 69
Nerosho 2:d6dc5c2224cc 70 recvGPS=gps.getc();
Nerosho 2:d6dc5c2224cc 71 getGPS[i]=recvGPS;
Nerosho 2:d6dc5c2224cc 72
Nerosho 2:d6dc5c2224cc 73 if(getGPS[i]=='\n') {
Nerosho 2:d6dc5c2224cc 74
Nerosho 2:d6dc5c2224cc 75 if((getGPS[5]=='G')&&(getGPS[6]=='A')) {
Nerosho 2:d6dc5c2224cc 76
Nerosho 2:d6dc5c2224cc 77 MuPort.send(getGPS);
Nerosho 2:d6dc5c2224cc 78
Nerosho 2:d6dc5c2224cc 79 /*if(fp == NULL) {
Nerosho 2:d6dc5c2224cc 80 error("Could not open file for write\n");
Nerosho 2:d6dc5c2224cc 81 }*/
Nerosho 2:d6dc5c2224cc 82
Nerosho 2:d6dc5c2224cc 83 fprintf(fp2, "%s\n",getGPS);
Nerosho 2:d6dc5c2224cc 84 //fclose(fp);
Nerosho 2:d6dc5c2224cc 85 wait(1);
Nerosho 0:d0f3991839ec 86
Nerosho 2:d6dc5c2224cc 87 }
Nerosho 2:d6dc5c2224cc 88
Nerosho 2:d6dc5c2224cc 89 i=0;
Nerosho 2:d6dc5c2224cc 90
Nerosho 2:d6dc5c2224cc 91 }
Nerosho 2:d6dc5c2224cc 92
Nerosho 2:d6dc5c2224cc 93 i++;
Nerosho 2:d6dc5c2224cc 94
Nerosho 2:d6dc5c2224cc 95 }
Nerosho 2:d6dc5c2224cc 96
Nerosho 2:d6dc5c2224cc 97 // wait(1);
Nerosho 2:d6dc5c2224cc 98 //fclose(fp);
Nerosho 0:d0f3991839ec 99 }
Nerosho 2:d6dc5c2224cc 100 //fclose(fp1);
Nerosho 2:d6dc5c2224cc 101 fclose(fp2);
Nerosho 2:d6dc5c2224cc 102
Nerosho 2:d6dc5c2224cc 103 }
Nerosho 2:d6dc5c2224cc 104
Nerosho 2:d6dc5c2224cc 105
Nerosho 2:d6dc5c2224cc 106