2011-06-10 139 views
3

我写过一个小型的python脚本,它使用来自usb gps加密狗的信息。到目前为止,我一直在linux中工作,在那里我可以在/ dev /中识别设备,并使用pySerial从它读取NMEA数据。尽管这不是一个完美的解决方案,但它并不是平台独立的,所以我开始考虑使用pyUSB来尝试与设备进行通信。用Python读取USB-GPS信息

设备:

  • 产品名称:ND-100S
  • 波特率:4800
  • USB类:0xEF
  • 子类:2

我的问题是我对usb知之甚少,所以我不知道如何初始化并从中读取句子。

我的测试代码这远远看上去像:

import usb 
import sys 

device = usb.core.find(bDeviceClass=0xef) 

print " + Class: %s" % device.bDeviceClass 
print " + Subclass: %i" % device.bDeviceSubClass 
print " + Protocol: %i" % device.bDeviceProtocol 
print " + Length : %s" % device.bLength 
print " + Configurations: %i" % device.bNumConfigurations 

...大多只是有关设备获取信息。

任何人都有这方面的经验?

+0

你有没有考虑过使用gpsd?它运行在Linux,* BSD和MacOSX上,显然也是[Windows](https://code.google.com/p/gpsd-4-win/)。 – 2011-06-10 14:17:33

回答

0

即使它是USB加密狗,您也只能通过串行接口与GPS设备通信。然而,有十几种NMEA口味,所以如果你想让它更独立于平台,我会建议使用python-gpsd。