2018/06/18
Diff: GPS.h
- Revision:
- 2:578f518a6a05
- Parent:
- 1:2f131675f872
- Child:
- 3:940fe222bab0
--- a/GPS.h Fri May 04 15:16:02 2018 +0000 +++ b/GPS.h Fri Jun 08 13:08:05 2018 +0000 @@ -2,11 +2,12 @@ GYSFDMAXB(GPS受信機1pps出力付きみちびき対応)用ライブラリ written by ST + 緯度、経度、海抜、時間を出力 他の処理と並行するなら割り込み処理を使用すべし ex:NVIC_SetPriority(UART2_IRQn,0); //0の部分で優先順位を決定 readable == true のとき正しいデータが出力 - ※経度、緯度、時間の読み方 + ※経度、緯度、海抜、時間の読み方 lon,lat:ddmm.mmmm dd:度 mm.mmmm:分(上一桁:10分、下一桁:1/10000分) @@ -16,12 +17,14 @@ mm.分 ss.秒 + alt:mm.mmmm + ※機能 ・GPS(TX,RX); コンストラクタ、ピン宣言 ・GPS::attach(関数名); 割り込み処理設定 ・GPS::GetDefault(); 編集前データ出力(char) - ・gps.ExtractionData(); 編集データ出力(float gps.longtitude, float gps.latitude, float gps.timedefault) - ・gps.ExtractionData_FULL(); 編集データ出力(書式は下記のサンプルプログラム参照) + ・gps.GetData(); 編集データ出力(float gps.longtitude, float gps.latitude, float gps.time) + ・gps.ExtractionData_FULL(); 編集データ出力(char* gps.longtitude, char* gps.latitude, char* gps.time)※未実装 @code //---------------------------------------------------------------------------------------------------------------------------------------------------------- @@ -35,13 +38,14 @@ void getGPS(){ //NVIC_SetPriority(UART2_IRQn,0); //割り込み優先順位(必要に応じて) - gps.ExtractionData_FULL(); //データ抽出 + gps.GetData(); //データ抽出 if(gps.readable == true){ - //pc.printf("longtitude:%f latitude:%f time:%f\r\n", gps.longtitude, gps.latitude, gps.time); //gps.ExtractionData(); 書き込み(経度、緯度、時間) + pc.printf("longtitude:%f latitude:%f altitude:%f time:%f\r\n", gps.longtitude, gps.latitude, gps.altitude, gps.time); //書き込み(経度、緯度、時間) } } int main(){ + //pc.baud(115200); //mbedのボーレート(必要に応じて) gps.attach(getGPS); //割り込み(関数名) while(1){ //gps.GetDefault(); //元のデータ @@ -67,20 +71,19 @@ bool readable; char datadefault; - char *longtitudeFULL, *latitudeFULL, *timeFULL, *altitudeFULL; + //char *longtitudeFULL, *latitudeFULL, *timeFULL, *altitudeFULL; float longtitude, latitude, time, altitude, times; void GPS::attach(void(*fn)()); void GetDefault(); - void ExtractionData(); - void ExtractionData_FULL(); + void GetData(); + //void ExtractionData_FULL(); private: Serial serial; - bool reasonable; char buf[100]; - int info, Degrees, Minutes, Hours; - float fDegrees, fMinutes, Seconds, fHours; + //int Degrees, Minutes, Hours; + float /*fDegrees,*/ fMinutes/*, Seconds, fHours*/; void gpscmd(char *command); void getstring(char DATA[]); void Initialization();