2017年3月,伊豆大島共同打上実験 CORE_缶ロケチーム電装

Dependencies:   MPU6050 MS5607 mbed SDFileSystem

Revision:
5:bcf55d8fe7a7
Parent:
4:cc266df87f3e
Child:
6:15204813ef87
diff -r cc266df87f3e -r bcf55d8fe7a7 main.cpp
--- a/main.cpp	Sun Feb 19 10:42:33 2017 +0000
+++ b/main.cpp	Mon Feb 20 12:25:06 2017 +0000
@@ -1,3 +1,36 @@
+/*
+2017年3月 伊豆大島共同打上実験
+団体名:CORE
+チーム名:ヌペリオル
+該当電装:ロケット搭載用
+
+使用部品
+・LPC1768(マイコン)
+・MPU6050(加速度・ジャイロセンサ)
+・MS5607(気圧・気温センサ)
+・MicroSDスロット
+・MG995(サーボモータ)×4
+
+ピン配置
+LPC1768  MPU6050  MS5607  MicroSD MG995_1  MG995_2  MG995_3  MG995_4
+VIN--------------------------------------------------------------------4.5~9.0V
+-----------------------------------VIN------VIN------VIN------VIN------5V
+Vout-----VCC------VIN-----VDD------------------------------------------3.3V
+        -ADO     -PS
+GND------GND------GND-----VSS------GND------GND------GND------GND------0V
+                 -CS
+p9-------SDA------SDA----------------------------------------------------
+p10------SCL------SCL----------------------------------------------------
+p11-----------------------CLK--------------------------------------------
+p12-----------------------DAT0-------------------------------------------
+p13-----------------------CMD--------------------------------------------
+p14-----------------------CD/DAT0----------------------------------------
+p23--------------------------------CTRL----------------------------------
+p24-----------------------------------------CTRL-------------------------
+p25--------------------------------------------------CTRL----------------
+p26-----------------------------------------------------------CTRL-------
+*/
+
 #include "mbed.h"
 #include "MS5607I2C.h"
 #include "MPU6050.h"
@@ -23,17 +56,26 @@
 Serial pc(USBTX, USBRX);
 SDFileSystem sd(p11, p12, p13, p14, "sd");
 
+PwmOut Door_1_1(p23);
+PwmOut Door_1_2(p24);
+PwmOut Door_2_1(p25);
+PwmOut Door_2_2(p26);
+
 Timer timer;
 Ticker loop_log;
 Ticker loop_open;
 
+/*ログカウンタ*/
+bool row = 0;
 int8_t col = 0;
-int8_t Phase = STANDBY;
-bool row = 0;
+/*ログ格納用*/
 float pressure[2][RATE_LOG],temperature[2][RATE_LOG];
 float acc[2][RATE_LOG][3],gyro[2][RATE_LOG][3];
 float t[2][RATE_LOG];
 float t_top,alt,alt_max,alt_launch;
+/*フェイズ変数*/
+int8_t Phase = STANDBY;
+/*降下判定用*/
 int8_t cnt_drop = 0;
 FILE *fp;
 
@@ -43,6 +85,10 @@
 
 int main() {
    timer.start();
+   Door_1_1.period_ms(20);
+   Door_1_2.period_ms(20);
+   Door_2_1.period_ms(20);
+   Door_2_2.period_ms(20);
    fp = fopen("/sd/log.txt", "w");
    fprintf(fp, "pressure,temperature,ax,ay,az,gx,gy,gz\r\n");
    loop_log.attach(&_Log,1.0/RATE_LOG);
@@ -57,7 +103,7 @@
                   Phase = LAUNCH;
                   break;
       case LAUNCH://フライトモード(発射判定可)
-                  alt_launch = ms5607.getAltitude(); 
+                  alt_launch = ms5607.getAltitude();
                   if(sw==0)Phase = FLIGHT;
                   break;
       case FLIGHT://飛翔中(頂点判定可)