阅读:3878回复:15
请教:用Readfile和Writefile怎样进行读写时需要指定管道吗?
是否需要指定?如果是,指定方法如何?
|
|
沙发#
发布于:2002-03-05 12:55
ReadFile和WriteFile只是向驱动程序传递IRP,至于使用那个管道应由驱动程序决定。
而应在向USBD发送的URB中指定哪个管道,何种传输方式等等。具体设置你应该仔细看URB的细节。 |
|
|
板凳#
发布于:2002-03-05 14:02
我们的设备是自己开发的HID类的,一个很简单的设备。使用Windows自带的标准驱动程序,能用Writefile写,不能用Readfile读,调试发现硬件收不到Readfile的请求,但可以收到Writefile的请求,能写成功。这是怎么回事呢,导致每次不能进行读,但我的这个应用程序可用来读写其他Hid类设备,再请指教!Thank u!
|
|
地板#
发布于:2002-03-06 12:33
请描述一下你的硬件,也许我能帮你!
|
|
地下室#
发布于:2002-03-06 12:57
我们的硬件就是一个普通的HID设备,只是希望能实现读写即可。硬件的汇编码见后:
|
|
|
5楼#
发布于:2002-03-06 12:57
我们的硬件就是一个普通的HID设备,只是希望能实现读写即可。硬件的汇编码见附件!谢了!
|
|
|
6楼#
发布于:2002-03-07 12:38
你的driver有发出read的请求吗?
|
|
|
7楼#
发布于:2002-03-07 14:47
我使用的是缺省的Windows驱动程序。我也怀疑驱动程序是否真正支持我们自己的硬件。各位大虾,多帮忙!
|
|
8楼#
发布于:2002-03-08 09:19
你用usb分析仪看看是否有packet
|
|
|
9楼#
发布于:2002-03-08 09:37
USB分析仪为什么东东?有什么用途?
|
|
10楼#
发布于:2002-03-11 21:24
朋友,我的问题和你的或许一样:
用终端0列举正常 用终端1上传数据正常 但用终端0的GET-REPORT请求上传数据不行,在微机上READFILE()中,句柄用WRITEFILE()中的句柄(我用SET-REPORT从终端0发送控制命令到电路板上的USB接口芯片),希望产生GET-REPORT请求,但是没有终端0的中断产生。而且微机的程序发生“死机“,即进程死锁。可以看到CPU利用率近百分子百。 我希望用(控制传输)GET-REPORT上传数据是因为,对于我的低速USB接口芯片CY7C63001,从终端1上传数据,最快速度是8字节(一个数据包)/8毫秒,即1K字节/秒。我希望传输数据量可以更大。在终端0上的传输速率最大可达8字节(一个数据包)/1毫秒,即8K字节/秒,可以满足要求。 目前我正在看驱动程序,希望诸位提出宝贵建议。 张谊文 |
|
|
11楼#
发布于:2002-03-25 19:29
我很久以前看过,好像是应用程序调用IoDevicectrol()等函数,形成向驱动程序发送IRP,然后是杂驱动程序里面,负责把IRP改装成
URB,也是通过调用驱动程序里面的定义函数,具体可以去查DDK文档。 至于您说的那指定管道的问题,我所看到的bulktest例程里面,是可以指定的,在IoDeviceCtrol()函数里面有一个对象为参数,就包含了指定通道的信息,然后把这个通道信息包含在IRP内,接下来驱动程序就负责把送过来的IRP中的管道信息,包含在URB里面,从而指定了传输通道。 我个人理解是这样,不当之处,请指出。 |
|
|
12楼#
发布于:2003-05-21 16:53
各位前辈,我现在也遇到了这样的问题,你们解决了吗???
|
|
13楼#
发布于:2003-05-22 10:31
aaaa????
settled it?? |
|
14楼#
发布于:2003-05-22 16:16
这个问题已经被提过很多次了,但至今未有解决方案,望高人指教
|
|
15楼#
发布于:2003-05-24 10:35
各位大侠:
我也在作hid类的的设备,我出的情况和你们出的一样,也是使用readfile读不出任何数据,但程序前面和设备的连接确是正常,你们 解决了吗???,希望各位能给我讲讲,我有急用!!!,谢谢了!!! |
|