Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: 2_MPU9250 mbed 2_GPS_GMS6-CR6 2_LPS33HW 2_EEPROM 2_P7100
Diff: main.cpp
- Revision:
- 1:d9208e6f6952
- Parent:
- 0:15c3892eee6b
--- a/main.cpp Thu Aug 13 16:04:56 2020 +0000
+++ b/main.cpp Tue Nov 17 16:16:50 2020 +0000
@@ -31,7 +31,7 @@
char s[64]; //データ取得配列
float accel[3], gyro[3]; //MPU9250data
-float AX, AY, AZ, GX, GY, GZ; //MPU9250data
+float AX, AY, AZ, A, GX, GY, GZ; //MPU9250data
float T; //時刻データ
float P; //気圧データ取得
float V; //電圧取得
@@ -101,7 +101,7 @@
ThrustValve = 1;wait(1);ThrustValve = 0;
wait(2);
- for(int c = 0; c < 30 ; c++) {
+ for(int c = 0; c < 80 ; c++) {
LED_1 = 1;
LED_2 = 1;
LED_3 = 1;
@@ -111,7 +111,7 @@
LED_2 = 0;
LED_3 = 0;
LED_4 = 0;
- wait(1);
+ wait(0.5);
}
@@ -124,10 +124,12 @@
wait_ms(50);
}
groundP = groundP/1000; //地上の気圧データ
- heightP = 0.9994307 * groundP; //高度5mの気圧を計算
+ heightP = 0.999517419 * groundP; //高度4.0m@10度の気圧を計算
+ wait(2);
pc.printf("groundP:%f, heightP:%f\r\n", groundP, heightP);
twe.printf("groundP:%f, heightP:%f\r\n", groundP, heightP);
-
+ wait(2);
+ twe.printf("groundP:%f, heightP:%f\r\n", groundP, heightP);
//Wait mode
pc.printf("Wait mode Start!\r\n");
@@ -166,8 +168,8 @@
judge = 1;
break;
}
- else if(dP[0] <= 0 && dP[1] <= 0 && dP[2] <= 0 && dP[3] <= 0 && dP[4] <= 0) {
- judge = 2;
+ else if(dP[0] <= 0 && dP[1] <= 0 && dP[2] <= 0 && dP[3] <= 0 && dP[4] <= 0 ) {
+ judge = 1;
break;
}
}
@@ -271,6 +273,7 @@
AX = accel[0];
AY = accel[1];
AZ = accel[2];
+ A = sqrtf(AX*AX + AY*AY + AZ*AZ);
GX = gyro[0];
GY = gyro[1];
GZ = gyro[2];
@@ -278,7 +281,7 @@
sprintf(s, "%8.3f %8.3f %6.3f %5.3f %5.2f %5.2f %5.2f %5.2f %5.2f\r\n", T, P, TP, AX, AY, AZ, GX, GY, GZ); //floatからchar*へ変換
rom.write_low(pointer_low, s, 64); // write tha data
- twe.printf("%8.3f %8.3f %6.3f %5.2f\r\n", T, P, TP, AZ); //無線機送信
+ twe.printf("%8.3f %8.3f %6.3f %5.2f\r\n", T, P, TP, A); //無線機送信
pointer_low = pointer_low + 64; //アドレスずらし
@@ -299,6 +302,7 @@
AX = accel[0];
AY = accel[1];
AZ = accel[2];
+ A = sqrtf(AX*AX + AY*AY + AZ*AZ);
GX = gyro[0];
GY = gyro[1];
GZ = gyro[2];
@@ -307,7 +311,7 @@
rom.write_high(pointer_high, s, 64); // write tha data
- twe.printf("%8.3f %8.3f %6.3f %5.2f,", T, P, TP, AZ); //無線機送信
+ twe.printf("%8.3f %8.3f %6.3f %5.2f,", T, P, TP, A); //無線機送信
pointer_high = pointer_high + 64; //アドレスずらし
@@ -357,11 +361,12 @@
AX = accel[0];
AY = accel[1];
AZ = accel[2];
+ A = sqrtf(AX*AX + AY*AY + AZ*AZ);
GX = gyro[0];
GY = gyro[1];
GZ = gyro[2];
- sprintf(s, "%8.3f %8.3f %6.3f %5.2f %5.2f %5.2f %5.2f %5.2f %5.2f", T, P, TP, AX, AY, AZ, GX, GY, GZ); //floatからchar*へ変換
+ sprintf(s, "%8.3f %8.3f %6.3f %5.2f %5.2f %5.2f %5.2f %5.2f %5.2f %5.2f", T, P, TP, AX, AY, AZ, A, GX, GY, GZ); //floatからchar*へ変換
twe.printf("%s\r\n", s); //送信
pc.printf("%s\r\n\r\n", s); //check用
memset(s, '\0', 64 ); //初期化