0

我很困惑,因为我知道我的 GPS 设备状态和服务状态都打开了,但视图中的卫星和纬度/经度都是空白的。我已将我的程序配置为使用 port GPD1,而我的硬件使用COM7. 这似乎是正确的配置。为什么我什么都没有得到回报?

4

1 回答 1

1

纬度和经度仅在存在修复(有效地理位置)时才填写:

            // call native method passing in our native buffer
            int result = GPSGetPosition(gpsHandle, ptr, 500000, 0);
            if (result == 0)
            {
                // native call succeeded, marshal native data to our managed data
                gpsPosition = (GpsPosition)Marshal.PtrToStructure(ptr, typeof(GpsPosition));

                if (maxAge != TimeSpan.Zero)
                {
                    // check to see if the data is recent enough.
                    if (!gpsPosition.TimeValid || DateTime.Now - maxAge > gpsPosition.Time)
                    {
                        gpsPosition = null;
                    }
                }
            }

对于一个固定(有效位置),GPS 需要至少三个有效卫星。

请参阅我链接到您的其他问题的GPSsample 。它将显示更多关于 GPS 信号发生情况的背景信息。

提示:如果没有备用 EE 数据源并且 GPS 模块没有移动太多,则首次定位时间 (TTFF) 可能会持续长达 15-20 分钟,并且可以免费查看天空。EE数据是从卫星广播中构建的,数据速率非常低。EE 数据也可以通过互联网数据连接提供,但使用取决于所使用的 GPS 模块。该 EE 数据指定了两周内所有 GPS 卫星的真实位置。如果 GPS 接收器关闭并移动了约 200 公里,则必须从基地计算位置(可能需要 15 分钟)。

实际上,当前的 GPS 接收器为 EE 数据提供替代“馈送”,例如 GPSeXtra(互联网数据)或 MS 辅助 GPS(手机信号塔 ID 和位置)。

于 2016-09-28T12:26:07.607 回答