GPS 受信機も備えた Windows Mobile 6.0 電話を持っているとします。WinMobile SDK は GPS 機能へのアクセスをサポートしていますか?
そうでない場合、GPS を使用してプログラミングするためのオプション (API) は何ですか。つまり、GPS 機能を使用するアプリを作成します。主に Windows Mobile 6.x に関心がありますが、一般的な回答も含めてください。
私は確かに最も役立つ回答に投票します。
前もって感謝します。
GPS 受信機も備えた Windows Mobile 6.0 電話を持っているとします。WinMobile SDK は GPS 機能へのアクセスをサポートしていますか?
そうでない場合、GPS を使用してプログラミングするためのオプション (API) は何ですか。つまり、GPS 機能を使用するアプリを作成します。主に Windows Mobile 6.x に関心がありますが、一般的な回答も含めてください。
私は確かに最も役立つ回答に投票します。
前もって感謝します。
2 つのオプション:
オプション (1) はおそらく推奨されます
Chris Craft は、シリーズ30 日間の .NET Windows Mobile アプリケーションで、この種のソース コードをたくさん持っていました。
残念ながら、このブログ シリーズは終了したようですが、ありがたいことに、コードは Codeplex に保存されています。
また、C への移植と、元の投稿に関するいくつかの議論は、/dev/mobileで見つけることができます。
Raffaele Limosaniのブログには、中級 GPS ドライバーの使用に関する注意事項もあります。
編集して追加:
GPS.NET は最近オープン ソースになり、CodePlex で利用できるようになりました。
.NET Compact Framework での開発を計画している場合は、Windows Mobile Developer Samples に非常に広範な GPS の例があります。それは基本的に gpsapi.dll のラップを使用しますが、動作を示しています。C:\Program Files\Windows Mobile 6 SDK に WM6 キットをインストールした後、GPS サンプルは C:\Program Files\Windows Mobile 6 SDK\Samples\PocketPC\CS\GPS にあります。
幸運を!
CodeProject.comでいくつかのソリューションを見てみてください。Windows Mobile と GPS に関する非常に優れた記事がたくさんあります。
また、中間ドライバーを使用するコードをテストするには (他の回答を参照)、この中間ドライバーを介してファイルに保存された NMEA ストリームをパイプするために使用できる SDK の FakeGPS ユーティリティを忘れないでください。これにより、GPS ソフトウェアを簡単にテストできます。実際に GPS を受信して動き回る必要はありません。
私の観点からは、シリアル ポート (私の場合は COM5、ボーレート 4800) を読み取り、受信したデータを解析する方がはるかに簡単です。(文字列を解析する方法は、Google とフレーズで見つけることができます: gps NMEA 文)
私にとって、アドレスの例を理解することは不可能です:
C:\Program Files\Windows Mobile 6 SDK\Samples\PocketPC\CS\GPS
それはすべて非常に複雑で簡単ではありません。次のようなはるかに簡単で便利なインターフェイスを期待しています。
myGps = new GPS()
myGPS.getPosition
しかし、これはおそらく不可能です:(
そしてRS232経由でそれを行う方法は? (私はVB.NETで働いています)
GUI で (またはプログラムで) オブジェクト System.IO.Ports.SerialPort を作成し、そのイベント DataReceived を使用します。データが GPS から来るたびに、このイベントが発生し、その本体で処理できます。
データは、セクション $GPGGA、$GPGSA などに分割された長い文字列の形式です。重要なのは $GPGGA です。それぞれの特定の情報はカンマで区切られています。この文字列のみを解析するよりも - VB.net で myArray = myData.Split(","c) を使用します。
PS: ","c は、カンマが文字列ではなく文字列であることを意味します (VB.NET)
ご覧のとおり、数行以上のコードを記述する必要はありません。MS による例は不必要に難しく、初心者向けではありません。
PS2: GPS にコマンドを送信しないことに注意してください。自動的かつ定期的にデータをプログラムに送信します。ポートを開き、バッファからすべてのデータを読み取り、Chr() を使用して文字列に変換し、解析するだけです。大きな問題ではない。