Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
寻找虚拟USB HID驱动程序_Usb_Driver_Hid_Virtual Serial Port - Fatal编程技术网

寻找虚拟USB HID驱动程序

寻找虚拟USB HID驱动程序,usb,driver,hid,virtual-serial-port,Usb,Driver,Hid,Virtual Serial Port,我们设计了一种特殊的通讯工具,用于轮椅上控制灯光等。我们有通过PC控制这些设备的应用程序 不幸的是,该应用程序需要一个U盘。我们的设计不允许使用USB连接棒。相反,我们使用串行接口模块,通过蓝牙和虚拟组件连接到电脑。我们知道应用程序使用HID标准windriver。(不涉及第三方司机) 我们想知道是否可以使用一个HID“包装器”驱动程序来模拟USB标识符和PnP,使应用程序认为棒已经连接,然后将蓝牙虚拟组件数据链接到应用程序。是的,我相信这是可能的,可能会很有趣,从未想过用PC模拟HID设备。您

我们设计了一种特殊的通讯工具,用于轮椅上控制灯光等。我们有通过PC控制这些设备的应用程序

不幸的是,该应用程序需要一个U盘。我们的设计不允许使用USB连接棒。相反,我们使用串行接口模块,通过蓝牙和虚拟组件连接到电脑。我们知道应用程序使用HID标准windriver。(不涉及第三方司机)


我们想知道是否可以使用一个HID“包装器”驱动程序来模拟USB标识符和PnP,使应用程序认为棒已经连接,然后将蓝牙虚拟组件数据链接到应用程序。

是的,我相信这是可能的,可能会很有趣,从未想过用PC模拟HID设备。您的团队中有没有人有过驱动程序开发经验?如果没有,则为陡峭的学习曲线做好准备

问题:“U盘”指的是包含有说明文件的U盘,还是如标题所示的某种类型的HID设备,如鼠标或操纵杆


不过,这并不重要,在任何一种情况下,都有可能编写一个驱动程序,用PC来模拟它。主要问题是,如果你的商店/项目将你的技能提升到你可以做到的程度,是否经济划算。这绝对不是你可以在周末删掉的代码。

参见。

这很有趣。。。我想更多地了解您现有的设备,即“U盘实际上是一个无线电收发机”

它是如何连接到电脑的?是否通过USB电缆(作为虚拟COM端口)?或者您是否正在使用任何USB-UART(USB-RS232)适配器,如以下链接()中提到的收发器和PC之间的适配器。即,USB串行适配器位于您的设备和PC之间

  • 如果您的设备直接连接到PC的USB端口(作为虚拟COM端口),那么我为您提供了一个解决方案。我们需要开发一个内核模式WDM或WDF USB HID迷你驱动程序,以便在安装我们的驱动程序后,PC主机和PC应用程序会将您的虚拟COM端口设备视为USB HID设备。在这个HID迷你驱动程序中,我们可以在HID报告描述符中定义一个自定义顶级HID集合,以便您告诉的任何应用程序都希望该设备作为USB HID设备,可以通过Windows HID API调用(如HidD_GetFeature、HidD_SetFeature、HidD_GetInputReport、HidD_SetOutputReport、,甚至ReadFile和WriteFile函数也可以工作

  • 但是如果你的收发机有一个RS232 D9端口,那么你可能需要像我之前所说的那样插入一个USB串行适配器来连接电脑和收发机。在这种情况下,我们需要开发一个UMDF USB Hid微型驱动程序,在Hid报告描述符中使用自定义顶级Hid集合。此驱动程序将完全是一个虚拟驱动程序,并将自身与实际的虚拟COM端口一起连接到设备管理器。HID兼容应用程序将与此虚拟驱动程序通信,并将收发器视为USB HID设备,尽管它实际上是一个COM端口。UMDF驱动程序将负责虚拟com端口和HID应用程序之间的通信


  • 如果您有任何疑问或需要进一步澄清,请告知我。

    对不起。我忍不住说:亲爱的戴尔,我们小组没有经验,这就是我们打电话的原因。USB记忆棒实际上是一个无线电收发机,它所需要的只是在9600 bd处与应用程序的串行连接。因为它是打包为USB记忆棒的,所以应用程序通过USB(HID)驱动程序查找串行链接。好的,那么如果你用通用USB HID设备(如鼠标)替换收发器,它能工作吗?您还可以使用PC上的收发器控制鼠标/kbd吗?收发器充当PC应用程序和Z-wave家庭网络之间的接口。当应用程序需要USB时,它有一个串行链接。我们无法修改应用程序,因此我们寻求中间解决方案。谢谢,雅各布