1

マシンの電源がオフのときに時間を失う GPS モジュールがあります。正確な時刻がなければ、GPS は修正されません。

を使用wvdialして、Hayes コマンドを の GPS モジュールに送信しています/dev/ttyUSB3。時間は起動時に設定する必要があります。init スクリプトを使用すると思います。次のような形式で日付を取得します。

#!/bin/sh
DATE=`date +%m/%d/%y,%H:%M:%S`
echo $DATE > setGPStime.txt

wvdial が GPS に時刻を送信する必要があるよりも

AT+CCLK=<time>

date コマンドの出力を読み取って時刻を設定するにはどうすればよいwvdialですか? シェルスクリプトでこれを行うにはどうすればよいですか、または「より良い」方法はありますか?

私はシェルスクリプトにあまり慣れていません。これを行うため、または私を正しい方向に送るための良いアイデアを持っている人はいますか?

4

1 に答える 1

1

次のように、ファイルから変数に読み取ることができます。

fromFile=$( cat setGPStime.txt )

ただし、 を呼び出しwvdialているのと同じスクリプトから呼び出している場合はdate、一時ファイルは必要ありません。$( date %m/%d/%y,%H:%M:%s )ファイルから読み取った値を使用する場所で使用するだけです。おそらく、このようなものです(の使用法に慣れていませんwvdial)?

wvdial "AT+CCLK=$( date %m/%d/%y,%H:%M:%s )"

しかし、アレックスウィーンは正しい。これはおそらくモジュールの表示時間を設定するだけであり、実際に配置に使用されるものではありません。GPS は (およそ) ナノ秒の精度の時報を使用しますが、これはオンボードのハードウェアでは実現できません。正確な時刻は衛星自体で維持され、必要な値はモジュールが受信した信号で送信されます。モジュールは、クロック自体を維持するのではなく、受信した信号に対して計算を行うだけで済みます。

于 2013-03-25T13:13:33.840 に答える