GPS モジュール (PMB-648 GPS) を搭載した Arduino Mega を使用しています。GPS が送信するすべての情報を確認できます。
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,144547.705,V,5458.6542,N,00136.4148,W,,,240512,,,N*65
$GPGGA,144549.705,5458.6542,N,00136.4148,W,0,00,,20.6,M,47.8,M,,0000*51
これで問題ありませんが、"$GPRMC" で始まる文字列を分離して別の変数に入れる必要があります。GPS が位置を変更すると文字列が変化し、"$GPRMC" だけが残ります。
これは私のコードです:
String GPSstring ="";
boolean stringComplete = false;
void setup(){
Serial.begin(9600);
Serial2.begin(4800);
}
void loop(){
if (stringComplete){
Serial.println(GPSstring);
GPSstring = "";
stringComplete = false;
}
}
void serialEvent2(){
while(Serial2.available()){
char inchar = (char)Serial2.read();
GPSstring += inchar;
if(inchar == '\n'){
stringComplete = true;
}
}
}