我正在尝试使用诺基亚的 N95 读取 GPS 设备的当前位置。我读到我需要我的设备将 NMEA 线路返回到串行端口,然后我将解析/拆分它以获得我想要的东西,但一直以来我不知道要向串行端口写入什么以使设备返回 NMEA?
就像还有其他用于消息传递等的 AT 命令......是否有任何特定命令要发送到串行端口以获取 NMEA?
我发现这个站点似乎可以指导您完成您需要做的所有事情。
我不确定它在 N95 中是如何工作的,但在我的 HTC 手机中,您无法向 GPS 设备发送命令以使其以某种方式运行。一旦我连接到 GPS 设备使用的串行端口,我就可以读取来自它的数据流,这恰好是 NMEA 数据。我发现没有办法向设备发送命令来告诉它如何表现。
在 Java ME 中执行此操作的一个好方法是使用JSR 179:Location API。您的应用需要创建 LocationListener 的实现,然后将其设置在默认的 LocationProvider 上。当你的监听器的 locationUpdated 方法被调用时,调用:
location.getExtraInfo("application/X-jsr179-location-nmea");
这将提供对 NMEA 语句的访问。
您可以使用 Java ME commports 机制通过串行端口发送它(使用:
System.getProperty("microedition.commports");
如此处所述)。
希望这可以帮助,
时髦的兄弟
我以前没有使用过那个特定的 GPS 设备,但对于我来说,我只需要打开端口并立即开始接收 NMEA 数据。
我有一个 N82,据我所知,它不直接说 NMEA。我使用此页面中的脚本——特别是标题为“#将带有内置 GPS(例如你的 N95)的 S60 手机变成蓝牙 GPS”的脚本——来获取 NMEA 字符串。
Ahh oki 所以我需要运行一些脚本。Oki 我想我应该为它购买一个特定的 GPS 设备。
哪种设备可以以最便宜的方式完成我的工作?