通过rapi同PC通讯的问题(急)

杨彪   2009-11-5 18:56 楼主
    第一次写通过RAPI同PC通讯的接口,遇到下列一个问题,各位给指点一下.
    下位机连续用IRAPIStream.write写一段buffer,PC端IRAPIStream.read这段了buffer,把Buffer整合成图片存在PC.(用的是非阻塞模式)
    部分代码如下:
        while(bSensorStatus[0] == 0x1)
        {

                memset(pImageBuf,0x00,imageBufLen);
                iRet = IO_GetImageBlock(dwLineNum,pImageBuf,(BYTE *)bSensorStatus);
/*                iRet = 0;
                for(unsigned int m =0;m                 {
                  pImageBuf[m] = 30 *i;
                }
                  if(i==7)
                   bSensorStatus[0] = 0x0;
                i++;
*/
                if(iRet == 0)
                   //Write length of string
                   hr = pIRAPIStream->Write(&imageBufLen,sizeof(imageBufLen),&cbBytes);
                   //Write string
                   hr = pIRAPIStream->Write((unsigned char *)pImageBuf,(unsigned long)imageBufLen,&cbBytes);
                }else
                {
                   goto ERR_EXIT;
                }
        }
   现在的情况是,如是以上述代码跑程序,则在PC端read速度很慢,类似阻塞IO_GetImageBlock了,整的下位机读一会停一会,如果把IO_GetImageBlock注释,把上述代码注释的取消跑程序,则一切正常.或者我把一张图按段读取并上传PC,同样也没问题.
   如果单独跑IO_GetImageBlock,并write,但我在PC端不read,同样速度也很正常.

   哪位了解相关情况,急盼指点一下.

                                                                     谢谢
     

回复评论 (6)

找找牛人的BLOG,别人已经用过了.
点赞  2009-11-5 19:02
rapi虽然使用过,但都是在pc端用来和device进行通信
没有像lz这么开发过,学习了,顶,好贴
点赞  2009-11-6 20:17
菜鸟来帮忙顶下,非阻塞模式应该没有什么问题的
点赞  2009-11-6 22:04
看看先
点赞  2009-11-6 22:05
  自己顶一下.
点赞  2009-11-9 10:14
  驱动的原因.
  
点赞  2010-1-25 13:46
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复