Arduinoで遊ぶページ

Arduinoで遊んだ結果を残すページです。
garretlab
GPSでうるう秒

概要

GPSでうるう秒がどうなるのかを見てみました。

GT-720FというGPSセンサモジュールを使います。

目的

2012年7月1日午前9時(日本時間)にうるう秒が挿入されました。GPSでうるう秒がどう取り扱われているのかを確認します。

ハードウェア

GPSセンサのページと同じです。

実験

時刻情報だけを取得するプログラムを作成しました。

void setup () {
  Serial.begin(9600);
}

void loop () {
  static char s[256];
  static int pos = 0;
  
  if (Serial.available()) {
      s[pos] = Serial.read();
      if (s[pos] == '\n') {
        s[pos - 1] = '\0'; // Escape '\r'
        analyze_data(s);
        pos = 0;
      } else {
        pos++;
      }
  }
}

// analyze GPS output.
void analyze_data(char *s) {
  char *type;
  char *time;
  
  type = strtok(s, ",");
  if(strcmp(s, "$GPRMC") != 0) {
    return;
  }

  time = strtok(NULL, ",");
  Serial.println(time);
}

結果

235959.003のあとに、235900.000が追加され、その後、000000.003となりました。235960が追加されると思っていたんですが…

バージョン

Arduino 1.0.1



メニューを表示するためにJavaScriptを有効にしてください。

Arduinoで遊ぶページ
Copyright © 2012 garretlab all rights reserved.
inserted by FC2 system