代码之家  ›  专栏  ›  技术社区  ›  Torleif

与Windows上的usb HID设备通信的最佳usb库是什么?

  •  18
  • Torleif  · 技术社区  · 16 年前

    图书馆应该;

    -简单易用,几行客户机代码就能完成很多工作
    -尽可能独立于平台。(如果将来有端口连接到其他平台)
    -有C++绑定。
    -成熟稳重

    我也希望通过回调通知大多数隐藏事件。

    *利比德-(很不幸?)这是GPL,不能在我的应用程序中使用。
    *WDK-对我来说有点低级。我不需要那种控制
    *atusbhid-这有一个适当的抽象级别,但是与windows消息传递循环紧密相连

    你们还有别的选择吗?

    6 回复  |  直到 16 年前
        1
  •  8
  •   David Ledger    5 年前

    看一看 hidapi 它是C,它回答C++绑定问题(有效地):是跨平台的,并且具有非常许可的许可。似乎没有回调,但是。。。

        2
  •  5
  •   Michael Kohne    12 年前

    如果libhid对您有用,那么可能要做的事情是编写一个应用程序(您可以使用GPL),它使用libhid与设备对话,然后通过TCP连接提供您需要的任何内容。你真正的应用程序将通过TCP连接来完成它所需要的。这显然将是一个巨大的性能打击。

    这个应用程序实际上是libhid和你的应用程序之间的一个“填充程序”。在这种情况下,垫片的存在是出于法律原因,而不是技术原因。

    我不是说这是个好主意,只是说这是个好主意。

        3
  •  2
  •   Øystein Øystein    16 年前

    跟踪系统的HIDmaker软件套件是一个选项。

    -易于使用(非常适合学习如何为USB HID编程) -为主机和设备生成稳定的示例代码(根据我的经验是稳定的) -高性能(如果HID一开始甚至可以说是高性能的话)

    -仅适用于Microsoft Windows -使用自己的USB库(ActiveX)

        4
  •  2
  •   Dave Van den Eynde    16 年前

    考虑自己滚。您将完全控制接口、平台独立性级别等。即使一个项目是GPL,你也可以把它作为自己的菜谱,作为一个测试平台来发现自己的问题。

        5
  •  2
  •   Peter O. Manuel Pinto    12 年前

    http://embedded24.net . 也有几个示例应用程序包括VisualStudio 2010(C++、C和VB)。

        6
  •  2
  •   David Ledger    5 年前

    看看这个代码:

    http://geekswithblogs.net/tamir/archive/2008/12/30/read-and-use-fm-radio-or-any-other-usb-hid.aspx

    它提供了一些简单的类来与HID设备对话。归根结底,就是获取设备的别名(类似于“?\隐藏“Vid”并使用CreateFile打开它。可以在HKML\SYSTEM\CCS\Control\DeviceClasses{4d1e55…}下获取设备的别名\