hfyhl
驱动小牛
驱动小牛
  • 注册日期2002-11-08
  • 最后登录2005-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1326回复:1

为什么会pending?

楼主#
更多 发布于:2003-05-05 14:17
我在ezusb上做实验,用固件框架生成了firmare,
改了periph.c中ep1out中断的内容,让它一中断
就往七段led写个数字。然后用driverstudio生成
了一个usb驱动,使用默认的ep1out的写操作,在
test_mydevice里面这样写:
char buf[20];
ULONG nWritten=20;
for(int i=0;i<20;i++)
buf=0x00;
buf[0]=0x05;
printf(\"Writing to device - \");
WriteFile(hDevice, buf, 20, &nWritten, NULL);
然后用softice跟踪,发现writecomplete一直没执行,
强行关掉test_mydevice时,才跳到writecomplete,
并且显示该irp处于pending状态。请有经验的大虾指点我一下,
已经郁闷很久了,解决了问题,我一定给分。
Li Li
驱动牛犊
驱动牛犊
  • 注册日期2002-11-14
  • 最后登录2003-05-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-05-08 22:20
你能确定你每次从USB设备中读数据时(如果有的话)相应的固件中的控制位都被正确地设置了吗?这是pending 很常见的一种原因。
游客

返回顶部