bsu_bsu
驱动牛犊
驱动牛犊
  • 注册日期2008-10-13
  • 最后登录2009-04-01
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望45点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1099回复:0

由VCC++写的关于FX2例程遭遇到读写错误问题请教!

楼主#
更多 发布于:2008-10-16 17:18
我用的是钱峰做的开发板,在做BULKLOOP测试时候,我加了一些观察点来打印调试信息!碰到问题如下:

1,在没有屏蔽任何语句的情况下,程序卡在

if (gEndpointSelect != INONLY)
         WaitForSingleObject(WriteCompleteEvent,INFINITE);

无法继续执行

2,我以为是写线程有问题,于是就屏蔽了有关写的语句,如:

/*      if (gEndpointSelect != INONLY)
         _beginthread(TransferThread,0,&outThreadControl);

*/

仍出现错误,"Error: Read failed"

这里,所来源是代码是


 if (gEndpointSelect != OUTONLY && !inThreadControl.status)
      {
         SendMessage (hOutputBox, LB_ADDSTRING, 0, (LPARAM)"Error: Read failed");

         SendMessage (hOutputBox, LB_ADDSTRING, 0, (LPARAM)"Dumping OUT packet to file");
         dumpfile = fopen("c:\\dumpfile.txt","w");
         for (i=0;i<CurrentTransferSize;i++)
            fprintf(dumpfile,"%X\n",outBuffer);
         fclose(dumpfile);

         binfile = fopen("c:\\binfile.bix","wb");
         fwrite(outBuffer,sizeof(BYTE),CurrentTransferSize,binfile);
         fclose(binfile);

         gStopTest = TRUE;
      }

那么我推测是inThreadControl.status已经为FLASE了,可是我觉得既然读线程完了,应该是TRUE了啊?


不知该如何解释以上现象!
游客

返回顶部