2017年伊豆大島共同打ち上げ実験用電装モジュール搭載GPS測位プログラム
Dependents: Hybrid_interruptGPS Hybrid_main_FirstEdtion rocket_logger_sinkan2018_v1 HYBRYD2018_IZU_ROCKET ... more
Diff: GPS_interrupt.h
- 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(){