BYTE bDeviceClass; //USB分配的设备类代码,0x01~0xfe为标准设备类,0xff为厂商自定义类型,0x00不是在设备描述符中定义的,如HID BYTE bDeviceSubClass; //usb分配的子类代码,同上,值由USB规定和分配的,HID设备此值为0 BYTE bDeviceProtocl; //USB分配的设备协议代码,同上HID设备此值为0 BYTEbMaxPacketSize0...
1、ReadFile 的调用不会引起设备的任何反应,即 HID 设备与主机之间的中断 IN 传输不与ReadFile 打交道。实际上主机会在最大间隔时间(由设备的端点描述符来指定)内轮询设备,发出中断 IN 传输的请求。“读取”即意味着从某个 buffer 里面取回数据,实际上这个 buffer 就是 HID 设备驱动中的buffer 。这个 buffer ...
说明:-以下结论都是基于WindowsXP系统所得出的,不保证在其他系统的适用性。-在此讨论的是HID自定义设备,对于标准设备,譬如USB鼠标和键盘,由于操作系统对其独占,许多操作未必能正确执行。方法/步骤 1 1.所使用的典型WindowsAPICreateFileReadFileWriteFile以下函数是DDK的内容:HidD_SetFeatureHidD_GetFeatureHidD_S...
ReadFile 用于读取 HID 设备通过中断 IN 传输发来的输入报告 1、 ReadFile 的调用不会引起设备的任何反应,即 HID 设备与主机之间的中断 IN 传输不与ReadFile 打交道。实际上主机会在最大间隔时间(由设备的端点描述符来指定)内轮询设备,发出中断 IN 传输的请求。“读取”即意味着从某个 buffer ...
- 在此讨论的是 HID 自定义设备,对于标准设备,譬如 USB 鼠标和键盘,由于操作系统对其独占,许多操作未必能正确执行。 1 . 所使用的典型 Windows API CreateFile ReadFile WriteFile 以下函数是 DDK 的内容: HidD_SetFeature HidD_GetFeature HidD_SetOutputReport ...
知名半导体厂家台湾Holtek公司的HT42B564-x(x是版本) 是一款内置完整 USB 和 UART 接口功能的高性能 USB to UART Bridge 控制器,针对需与各种类型 UART 通信的产品应用而设计。该芯片采用免驱的USB HID协议与PC机进行双向通信,使用者无需了解繁琐的USB通信协议,即可轻松实现中、低速率的各种USB接口类产品。
接口描述符中bInterfaceClass的值必须为0x03,bInterfaceSubClass的值为0或1,为1表示HID设备符是一个启动设备(Boot Device,一般对PC机而言才有意义,意思是BIOS启动时能识别并使用您的HID设备,且只有标准鼠标或键盘类设备才能成为Boot Device。如果为0则只有在操作系统启动后才能识别并使用您的HID设备)。
我们知道,HID设备有三种类型的报告可以使用:Input Report(至少一个)、Output Report(可选)和Feature Report(可选)。与之对应的,HID类相关的命令为Set Report和Get Report。 上位机可以通过这两个命令,与HID设备中设定的数据进行通信。也就是说,三种类型的报告用来告诉上位机,设备本身所具有的属性;上位机和HID设备...
知名半导体厂家台湾Holtek 公司的HT42B564-x(x是版本) 是一款内置完整 USB 和 UART 接口功能的高性能 USB to UART Bridge 控制器,针对需与各种类型 UART 通信的产品应用而设计。该芯片采用免驱的USB HID协议与PC机进行双向通信,使用者无需了解繁琐的USB通信协议,即可轻松实现中、低速率的各种USB接口类产品。
1. 读取Hid设备全局id [DllImport("hid.dll")] private static extern void HidD_GetHidGuid(ref Guid HidGuid); 2. 取得一个包含所有HID接口信息集合的句柄 [DllImport("setupapi.dll", SetLastError = true)] private static extern IntPtr SetupDiGetClassDevs(ref Guid ClassGuid, uint Enumerator, IntPtr ...