GPS中间驱动不断返回0 0 LAT LNG



我很困惑,因为我知道我的GPS设备状态和服务状态都是ON的,但是卫星在视图中,纬度/经度都是空白的。我已经配置我的程序使用端口GPD1,我的硬件使用端口COM7。这似乎是正确的配置。为什么我什么也没得到?

纬度和经度只有在有固定(一个有效的地理位置)时才会被填充:

            // 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和位置)。

相关内容

  • 没有找到相关文章

最新更新