通过RAPI与PC通讯的问题

liqian99 2009-11-10 08:37: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 <imageBufLen;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,同样速度也很正常.

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

谢谢
...全文
47 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
guopeixin 2009-11-10
  • 打赏
  • 举报
回复
学习,很少用rapi

19,500

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧