gjj
gjj
驱动牛犊
驱动牛犊
  • 注册日期2001-08-21
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1842回复:3

快救救我!!!

楼主#
更多 发布于:2001-11-27 17:20
请问各位谁用过IOCTL_EZUSB_ISO_WRITE, 请给我一个例子好吗?
我用它往外传数据,不知为什么,就是传不过去。我的程序是:
IsoControlout.PacketSize = 64;
pipenumout = 1;
        
bResult = DeviceIoControl (hDevice,
                     IOCTL_Ezusb_RESETPIPE,
                     &pipenumout,
                     sizeof(ULONG),
                     NULL,
                     0,
                     &outnBytes,
                     NULL);

if (bResult != TRUE)
{SendDlgItemMessage(IDC_LIST1,LB_ADDSTRING,0,(LPARAM)\"Pipe Reset Failed\");
CloseHandle (hDevice);
return;
}
// perform the ISO transfer
IsoControlout.PacketCount = 16;
IsoControlout.PipeNum = 1;
IsoControlout.BufferCount = 2;
IsoControlout.FramesPerBuffer = 8;

bytesToRead = IsoControlout.PacketCount * (IsoControlout.PacketSize + sizeof(USBD_ISO_PACKET_DESCRIPTOR));

      outbuffer=(PUCHAR)malloc(bytesToRead);
for(i=0;i<IsoControlout.PacketCount;i++)
        {
for(j=0;j<IsoControlout.PacketSize;j++)
           {
   outbuffer[i*IsoControlout.PacketSize+j]=(char)j;
}
}

       bResult= DeviceIoControl (hDevice,
            IOCTL_EZUSB_ISO_WRITE,
                     &IsoControlout,
                     sizeof(ISO_TRANSFER_CONTROL),
                     outbuffer,
                     bytesToRead,
                     &outnBytes,
                     NULL);
      
          if (bResult = TRUE)
{
          SendDlgItemMessage (IDC_LIST1, LB_ADDSTRING, 0, (LPARAM)\"Write ISO Buffer sucessed\");
          
}
       else
  {
         SendDlgItemMessage (IDC_LIST1, LB_ADDSTRING, 0, (LPARAM)\"Read ISO Buffer Failed\");
return;
  }
请各位大侠指点。
zlhlyy
驱动牛犊
驱动牛犊
  • 注册日期2001-11-25
  • 最后登录2003-07-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-11-28 01:45
在设备初始化时,是否配置了接口。
初学者
gjj
gjj
驱动牛犊
驱动牛犊
  • 注册日期2001-08-21
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-11-28 09:17
我好象没有,应该怎样配置,我在设备边我只在写描述符时指定了端口码和方向。还望zlhlyy大哥多多指教。
zlhlyy
驱动牛犊
驱动牛犊
  • 注册日期2001-11-25
  • 最后登录2003-07-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-11-29 21:36
现提供一sample,供参考:
//设置USB接口配置
SetInterface.alternateSetting=2;
SetInterface.interfaceNum=0;
RetCode=DeviceIoControl(hDevice,
                IOCTL_Ezusb_SETINTERFACE,
                &SetInterface,
                          sizeof(SET_INTERFACE_IN),
                NULL,
                0,
                &nBytes,
                NULL);
if (RetCode!=TRUE)
{
return FALSE;
}
初学者
游客

返回顶部