阅读:2016回复:11
对于HID设备来说调用ReadFile();
使用了如下函数来完成读写操作以及寻找指定的HID设备:
HidD_GetHidGuid(); SetupDiGetClassDevs(); SetupDiEnumDeviceInterfaces(); SetupDiGetDeviceInterfaceDetail(); CreateFile(); HidD_GetAttributes(); HidD_GetPreparsedData(); HidP_GetCaps(); HidD_FreePreparsedData(); ReadFile(); WriteFile(); 我 的 问题是对于HID设备来说调用ReadFile(); WriteFile()是不是就对应设备的 中断读和 中断写??? DeviceIOControl这个函数在HID设备中如何 使用?? |
|
最新喜欢:![]()
|
沙发#
发布于:2004-08-24 16:15
楼主,我是个菜鸟,现在还不知道开发HID设备时,应用软件到底是如何让主机和设备联系上的!大侠能指点一下吗?非常感谢!!
|
|
板凳#
发布于:2004-08-27 10:56
我已经做好了
|
|
|
地板#
发布于:2004-08-27 17:24
我觉得DeviceIoControl()主要调用驱动程序中DeviceControl()来调用
|
|
地下室#
发布于:2004-08-29 09:45
楼主能否把你的例子工程让我参考一下?先谢谢了!
xionghaoyu@tom.com |
|
5楼#
发布于:2004-08-30 19:52
也给我一份吧,我的能识别USB了,但还不能读和写控制,行吗?只这部分的代码也行呀。gdutchen214@sohu.com
|
|
6楼#
发布于:2004-08-31 08:08
|
|
7楼#
发布于:2004-09-29 13:01
我也在做这个东西,现在进度和楼主差不多
但是我搜索hid设备时候找不到我的u盘 用u盘的guid可以找到device name,然后我打开以后用writefile写数据总是失败. 是不是要先用deviceiocontrol和hid类的驱动程序通信以后才能writefile,楼主一个讨论一下 我的qq:13046591 msn:zxwitsme@hotmail.com email:itsmehust@163.com |
|
8楼#
发布于:2004-09-29 13:28
我想用D12和89C52做HID的例子,可是几天下来一点没有进展。能把程序发给我吗?8871212@163.com
|
|
9楼#
发布于:2004-09-29 17:11
我也在做这个东西,现在进度和楼主差不多 如果你的CreateFile已经成功说明device已经打开,用writefile写数据失败的原因是对U盘的读写必须是基于块/扇区进行。另外U盘不是hid设备,所以“搜索hid设备时候找不到我的u盘”是很正常的,U盘是mass storage device |
|
10楼#
发布于:2004-09-29 18:00
我的U盘不是用的Flash存储器,而是用的sdram,请问我打开usb的handle以后然后writefile不是直接写道usb buffer里面?不可能直接写道U盘吧
|
|
11楼#
发布于:2004-09-30 10:17
既然是U盘,那么它就是mass storage device,这种设备的接口遵循SCSI 标准的Direct Access Storage Device协议。无论是flash还是sdram,USB 设备上的介质都使用与SCSI 设备相同的逻辑块方式寻址。我想你的U盘应该是FAT文件系统,你试着读写512字节整数倍的数据量,应该会成功。
|
|