STM32F103:GPS 解析出力
1. 学習目標
今回の講座では、主にSTM32F103C8T6とGPSモジュールモジュールを使用して、位置情報の解析出力機能を実装する方法を学びます。
2. 事前準備
GPSモジュールはUARTとUSBで通信します。ここではSTM32のUARTポートを使用して情報を読み取ります。モジュールのTXDをSTM32F103C8T6ボードのPA10ピンに接続します。VCCとGNDはそれぞれSTM32F103C8T6の5VとGNDに接続します。TTLモジュールのGNDとRXDはそれぞれSTM32のGNDとPA9に接続します。

3. プログラム
モジュールのボーレートは9600です。

受信したデータを読み取って解析します。

緯度経度情報の単位を度に変換します

シリアルポートを通じて受信したデータを出力します。

注意:実はGPS/北斗測位の座標系の値は単純な100倍の関係ではなく、一度度分秒の変換を行う必要があります。つまり、取得したGPS/北斗座標値、例えば北緯2429.53531、東経11810.78036は、次のように計算する必要があります:24+(29.53531/60)≈ 24.49225517 118+(10.78036/60)≈118.17967267。また、マイコンによってはデータ変換精度の問題により一定の誤差が存在する場合があります。
4. 実験現象
モジュールに通電すると、起動に約32sの時間がかかり、その後モジュール上のシリアル出力状態ランプが点滅し続け、このとき正常にデータを受信できます。
プログラムをダウンロードして実行し、シリアルソフトを開き、ボーレートを9600に設定すると、シリアルに現在の位置情報が繰り返し出力されます。

注意、モジュールのアンテナは室外に置く必要があります。そうでないとGPS信号を検索できない場合があります。

