2017年伊豆大島共同打ち上げ実験用電装モジュール搭載GPS測位プログラム

Dependents:   Hybrid_interruptGPS Hybrid_main_FirstEdtion rocket_logger_sinkan2018_v1 HYBRYD2018_IZU_ROCKET ... more

Revision:
5:15ff963f066b
Parent:
4:758f97bee95a
Child:
6:2f91c71d64b1
--- a/GPS_interrupt.h	Sun Jan 15 20:01:46 2017 +0000
+++ b/GPS_interrupt.h	Sun Jan 15 20:20:56 2017 +0000
@@ -9,7 +9,7 @@
 *=============================================================================*/
 /**
  * @file GPS_interrupt.h
- * @brief GPSから送られてくるデータをバックグラウンドで解析し、呼び出せるライブラリ
+ * @bref GPSから送られてくるデータをバックグラウンドで解析し、呼び出せるライブラリ
  * @author 松本岳
  * @note ver1.3.5
  */
@@ -22,13 +22,15 @@
 class GPS_interrupt{
   
     public:
-        /**
-        *   @brief  GPS_interrupt's constructer
-        *   @param  *_gps   :   your Rawserial bus address
-        *   @param  _frequency  :   set updata rate
+        
+        /** 
+        *   @bref GPS_interrupt's constructer
+        *   @param _gps GPSと通信したいRawSerialバスのポインタ
+        *   @param _frequency GPSから何Hzでデータを取得したいか
         */
         GPS_interrupt(RawSerial *_gps,  int _frequency = 10);
-        GPS_interrupt* gps_irq;
+        
+        
         void initialize();//初期化関数
         void gps_auto_receive();
         bool processGPRMC(char *line);
@@ -39,6 +41,7 @@
         void gga_initialize();
         
     private://別にpublicにしても良かったけれど、unexpectedlyに変更されるので使えないようにしてやった
+        GPS_interrupt* gps_irq;
         int baudrate;
         int frequency;
     
@@ -67,102 +70,84 @@
     private:
         RawSerial *gps;
     public:
-        /**
-         * @fn
-         *  経度を返す関数
-         * @brief 経度を取得
+    
+        /** 経度を返す関数
+         * @bref 経度を取得
          * @return double型 経度
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline double Longitude(){
             return longitude;
         }
         
-        /**
-         * @fn
-         *  緯度を返す関数
-         * @brief 緯度を取得
+        /** 緯度を返す関数
+         * @bref 緯度を取得
          * @return double型 緯度
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline double Latitude(){
             return latitude;
         }
         
-        /**
-         * @fn
-         *  年を返す関数
-         * @brief 年を取得
+        /** 年を返す関数
+         * @bref 年を取得
          * @return int型 年
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline int Year(){
             return year;
         }
         
-        /**
-         * @fn
-         *  月を返す関数
-         * @brief 月を取得
+        /** 月を返す関数
+         * @bref 月を取得
          * @return int型 月
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline int Month(){
             return month;
         }
         
-        /**
-         * @fn
-         *  日にちを返す関数
-         * @brief 日にちを取得
+        /**  日にちを返す関数
+         * @bref 日にちを取得
          * @return int型 日にち
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline int Day(){
             return day;
         }
         
-        /**
-         * @fn
-         *  時間を返す関数
-         * @brief 時間を取得
+        /**  時間を返す関数
+         * @bref 時間を取得
          * @return int型 時間
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline int Hour(){
             return hour;   
         }
         
-        /**
-         * @fn
-         *  分を返す関数
-         * @brief 分を取得
+        /** 分を返す関数
+         * @bref 分を取得
          * @return int型 分
-         * @detail inline展開したつもり
+         * @note inline展開したつもり
          */
         inline int Minutes(){
             return minutes;
         }
         
-        /**
-         * @fn
-         *  秒を返す関数
-         * @brief 秒を取得
+        /**  秒を返す関数
+         * @bref 秒を取得
          * @return double型 秒
-         * @detail inline展開したつもり
          */
         inline double Seconds(){
             return seconds;   
         }
         
-        /**
-         * @fn
-         * 経度・緯度を取得できる関数
-         * @brief 2つの変数に経度、緯度の順に値を代入する
-         * @param (*lon) double型 経度 アドレス
-         * @param (*lat) double型 緯度 アドレス 
+        /** 経度・緯度を取得できる関数
+         * @bref 2つの変数に経度、緯度の順に値を代入する
+         * @param lon double型 経度 ポインタ
+         * @param lat double型 緯度 ポインタ 
          * @return データが有効かどうか 有効ならtrue, 無効ならfalse
-         * @detail 2つ変数を作って、そのアドレスを引数に与えてください。
+         * @note 2つ変数を作って、そのアドレスを引数に与えてください。
          */
         inline bool getPosition(double *lon, double *lat){
             *lon = longitude;
@@ -171,13 +156,11 @@
             else    return false;   
         }
         
-        /**
-         * @fn
-         * 経度・緯度を取得できる関数
-         * @brief 2つの配列に経度、緯度の順に値を代入する
-         * @param (*lonlat) double型 要素2の配列
+        /** 経度・緯度を取得できる関数
+         * @bref 2つの配列に経度、緯度の順に値を代入する
+         * @param lonlat double型 要素2の配列
          * @return データが有効かどうか 有効ならtrue, 無効ならfalse
-         * @detail 要素2の配列を作って、そのアドレスを引数に与えてください。
+         * @note 要素2の配列を作って、そのアドレスを引数に与えてください。
          */
         inline bool getPosition(double *lonlat){
             lonlat[0] = longitude;
@@ -186,18 +169,16 @@
             else    return false;   
         }
         
-        /**
-         * @fn
-         * 日付・時刻を取得できる関数
-         * @brief 6つの変数に年、月、日、時間、分、秒の順に値を代入する
-         * @param (*_year) int型 年 アドレス
-         * @param (*_month) int型 月 アドレス
-         * @param (*_day) int型 日 アドレス
-         * @param (*_hour) int型 時間 アドレス
-         * @param (*_minutes) int型 分 アドレス
-         * @param (*_seconds) double型 秒 アドレス 
+        /** 日付・時刻を取得できる関数
+         * @bref 6つの変数に年、月、日、時間、分、秒の順に値を代入する
+         * @param _year int型 年 ポインタ
+         * @param _month int型 月 ポインタ
+         * @param _day int型 日 ポインタ
+         * @param _hour int型 時間 ポインタ
+         * @param _minutes int型 分 ポインタ
+         * @param _seconds double型 秒 ポインタ 
          * @return データが有効かどうか 有効ならtrue, 無効ならfalse
-         * @detail 6つ変数を作って、そのアドレスを引数に与えてください。
+         * @note 6つ変数を作って、そのアドレスを引数に与えてください。
          */
         inline bool getUTC(int *_year, int *_month, int *_day, int *_hour, int *_minutes, double *_seconds){
             *_year = year;
@@ -210,10 +191,8 @@
             else    return false;   
         }
         
-        /**
-         * @fn
-         * 世界協定時間の日付・時刻を取得できる関数
-         * @brief 要素数6の配列に年、月、日、時間、分、秒の順に値を代入する
+        /** 世界協定時間の日付・時刻を取得できる関数
+         * @bref 要素数6の配列に年、月、日、時間、分、秒の順に値を代入する
          * @param (*_utc) float型 秒 アドレス 
          * @return データが有効かどうか 有効ならtrue, 無効ならfalse
          * @detail 要素6の配列を作って、そのアドレスを引数に与えてください。
@@ -230,13 +209,11 @@
             else    return false;
         }
         
-        /**
-         * @fn
-         * 世界協定時間の日付・時刻を取得できる関数
-         * @brief 要素数6の配列に年、月、日、時間、分、秒の順に値を代入する
-         * @param (*_utc) int型 秒 アドレス 
+        /** 世界協定時間の日付・時刻を取得できる関数
+         * @bref 要素数6の配列に年、月、日、時間、分、秒の順に値を代入する
+         * @param _utc int型 秒 ポインタ 
          * @return データが有効かどうか 有効ならtrue, 無効ならfalse
-         * @detail 要素6の配列を作って、そのアドレスを引数に与えてください。
+         * @note 要素6の配列を作って、そのアドレスを引数に与えてください。
          */
         inline bool getUTC(int *_utc){
             _utc[0] = year;
@@ -249,12 +226,10 @@
             else    return false;
         }
         
-        /**
-         * @fn
-         * 速度・進行方角を取得できる関数
-         * @brief 2つの変数に速度、進行方角の順に値を代入する
-         * @param (*_knot) double型 経度 アドレス [knot]
-         * @param (*_degree) double型 緯度 アドレス [degree] 北から右回り正です。
+        /** 速度・進行方角を取得できる関数
+         * @bref 2つの変数に速度、進行方角の順に値を代入する
+         * @param _knot double型 経度 ポインタ [knot]
+         * @param _degree double型 緯度 ポインタ [degree] 北から右回り正です。
          * @return データが有効かどうか 有効ならtrue, 無効ならfalse
          * @detail 2つ変数を作って、そのアドレスを引数に与えてください。
          */
@@ -265,20 +240,16 @@
             else    return false;
         }
         
-        /**
-         * @fn
-         * 捕捉衛星数を取得できる関数
-         * @brief 捕捉衛星数を返します。 
+        /** 捕捉衛星数を取得できる関数
+         * @bref 捕捉衛星数を返します。 
          * @return int型 捕捉衛星数 アドレス 
          */
         inline int Number(){
             return number;   
         }
         
-        /**
-         * @fn
-         * 標高を取得できる関数
-         * @brief 標高を返します。 
+        /** 標高を取得できる関数
+         * @bref 標高を返します。 
          * @return double型 標高 アドレス 
          */
         inline double Height(){
@@ -286,10 +257,8 @@
         }
         
         
-        /**
-         * @fn
-         * 速さを取得できる関数
-         * @brief 速さを返します。 
+        /** 速さを取得できる関数
+         * @bref 速さを返します。 
          * @return double型 速さ アドレス[knot] 
          */
         inline double Knot(){
@@ -297,10 +266,8 @@
         }
         
         
-        /**
-         * @fn
-         * 進行方角を取得できる関数
-         * @brief 進行方角を返します。 
+        /** 進行方角を取得できる関数
+         * @bref 進行方角を返します。 
          * @return double型 進行方角 アドレス 北から右回り正です。 
          */
         inline double Degree(){