使用Tek-Visa同时控制多台设备的疑问

碎碎念 2015-03-11 01:59:53
代码如下:

ViSession rm;
ViSession vi1;
ViSession vi2;
ViUInt32 retCnt;
int status = 0;
int ret = 0;
status = viOpenDefaultRM(&rm);
status = viOpen(rm, (ViBuf)"TCPIP::192.168.21.222::INSTR",
VI_NULL, VI_NULL,&vi1);
status = viOpen(rm, (ViBuf)"TCPIP::192.168.21.223::INSTR",
VI_NULL, VI_NULL,&vi2);
status = viWrite(vi1, (ViBuf)"*IDN?", 5, &retCnt);
status = viRead(vi1, (ViBuf) buffer, sizeof(buffer), &retCnt);

status = viWrite(vi2, (ViBuf)"*IDN?", 5, &retCnt);
status = viRead(vi2, (ViBuf) buffer, sizeof(buffer), &retCnt);

viOpen(...vu1)是成功的,但是viOpen(...vi2)也是成功的,但是vi2 open成功以后,对vi1的读写却都是失败的,对vi2 的读写是可以的,也就是说vi2 open成功以后,原因的vi1的链接就会无效,
我这边要同时控制2台tek示波器,有谁知道应该怎么解决吗?
...全文
386 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
laipdong 2015-08-20
  • 打赏
  • 举报
回复
你最后解决了这个问题吗,我现在也遇到了这个问题。

24,860

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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