阅读:1831回复:9
USB数据读取问题(续篇)!!!
小弟上次托诸位大侠的福将管道信息解决后。
这次本想放手大干了,可又有一郁闷问题出现了。 我用Bulk传输方式读数据。写入Ram中明明有2K的数据可 我将其全部读出的话,App程序调用驱动传输数据便会死掉。 如我是手动跟踪读的话就可将数据读对。 我想请教一下大家如何能让Bulk方式读数更稳定。在WDM驱动中应 做些什么工作了。请大家不吝赐教。谢谢谢谢!!! |
|
|
沙发#
发布于:2002-12-25 15:10
在App端大致是按如下方式实现
1.根据数据的总长度及Bulk方式下的最大传输长度64字节,计算 要读数的次数。 2.用第一步计算的次数循环取数据,每次取64字节数据。 :(可是如果我直接读取2k的数据大概有个几十次的循环,那 铁定死掉,可当我跟踪到App中目前最多跟到十多次数据皆读 正确。 唉,都过圣诞节了还怎么倒霉。:( |
|
|
板凳#
发布于:2002-12-25 16:29
我目前做试验,将循环次数设置为10。即循环10次每次读64字节数据。可真是奇怪,如直接将10次循环执行完只能读出64字节的数据,其它数据便都读不出来。但是跟进App一个循环循环的读则后面的数据却又可以读出来了。
我现在真是郁闷啊:(!!!请大家帮帮忙。 |
|
|
地板#
发布于:2002-12-26 13:34
单片机中程序的问题吧?
上层读取数据量必须与单片机中数据相吻合! |
|
地下室#
发布于:2002-12-27 10:58
应该不会有问题的,即便是不对应的话,也不应该出现那样的错呀。
再找找原因吧,都想想。 |
|
5楼#
发布于:2002-12-30 14:01
诸位大侠也许我没表述清楚。我所开发的部分是位于单片机以上的
部分。我对USB数据的访问是通过我用DDK编写的WDM驱动程序实现的 搞单片机的人员用Windriver测试过了,他向RAM写了2K数据全部是 读对了的。我现在真是郁闷请教诸位高手不吝赐教。谢谢大家。 |
|
|
6楼#
发布于:2002-12-30 14:03
诸位大侠也许我没表述清楚。我所开发的部分是位于单片机以上的
部分。我对USB数据的访问是通过我用DDK编写的WDM驱动程序实现的 搞单片机的人员用Windriver测试过了,他向RAM写了2K数据全部是 读对了的。我现在真是郁闷。希望诸位高手不吝赐教。WDM在通道读数的时候怎么解决该问题。谢谢大家。 |
|
|
7楼#
发布于:2002-12-30 21:46
如果单片机不把数据读走主机就不能发送,发送程序就会死掉,可能是单片机中的程序选择的端点不对,或是读完后没释放缓冲区
|
|
8楼#
发布于:2002-12-31 15:58
请较大家在WDM驱动程序中,
怎样检测某端点有没有正确的读到数据。 如何防止由于设备没跟上驱动程序的速度,导致重试直至死掉的 情况。请大家帮帮忙,新年之际小弟先谢过了。 |
|
|
9楼#
发布于:2003-01-14 14:51
都新年了请大家帮帮忙吧:)。
|
|
|