精品国产一区在线_av无码中文字幕无码王_天海翼三点刺激高潮不停_好硬好大好爽视频_欧美高清一区三区在线专区_香蕉黄色片

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發新帖

6314GPIB寫命令

關于6314的問題想請教,
我用VC編寫了測試6314GPIB命令的小程序,運行第一次可以控制,但運行第二次就不能向儀器寫命令了這是什么原因呢?
我寫的程序調用的是VISA自帶的例子,我只用了
viopen();
viwrite();
這兩個函數而已,通過viwrite()向6314寫命令,程序第一次可以正常運行,退出程序后,在打開程序時,提示viwrite()出錯.
Chroma提供的CVI驅動我也調用了,還是有同樣的問題,
我想是在退出時處理不正確吧,
不知6314在退出時要做什么特殊處理才不影響再次DOWNLOAD.
以下是我用VC寫的程序:
#include
#include
#include
#include
#include "visa.h"
static ViUInt32  rcount;
static unsigned char data[1024];
static ViStatus status;
static ViSession defaultRM;
static ViSession inst;
static char stringinstruct[1024];
int main(void)
{
status = viOpenDefaultRM (&defaultRM);
status = viOpen (defaultRM, "GPIB::7::INSTR", VI_NULL, VI_NULL, &inst);
    strcpy (stringinstruct,"*IDN?\n");
    status = viWrite (inst, (ViBuf)stringinstruct,strlen(stringinstruct), &rcount);
status = viRead (inst, data, 3000, &rcount);
cout< strcpy (stringinstruct,"CONFigure:REMote OFF");
status = viWrite (inst, (ViBuf)stringinstruct,strlen(stringinstruct), &rcount);
    status = viClose (inst);
    status = viClose (defaultRM);
    return 0;
}
全部回復(9)
正序查看
倒序查看
wolf2008
LV.3
2
2008-05-19 08:30
可否將程序提供出來,供參考一下呢?
0
回復
marsyax
LV.1
3
2008-05-19 12:00
是否在退出時沒有復原6314?
0
回復
owen.zhao
LV.4
4
2008-05-19 14:40
1、問題描述簡單了些,幫不上什麼忙.
2、Chroma有提供6310 的Visa驅動,自己調用gpid的方式已很少用了.
3、控制儀器選驅動盡量順序是:IVI  VISA  GPIB/COM.
0
回復
owen.zhao
LV.4
5
2008-05-19 20:54
1. 描述還不是很清楚, 提示viWrite()出錯是什么?
2. 不過出錯的原因是退出時沒有viClose.
3. 順序(visa例):
  a. viOpenDefaultRM
   b. viOpen
   c. viWrite/viRead
   d. viClose
0
回復
owen.zhao
LV.4
6
2008-05-19 20:54
1. 描述還不是很清楚, 提示viWrite()出錯是什么?
2. 不過出錯的原因是退出時沒有viClose.
3. 順序(visa例):
  a. viOpenDefaultRM
   b. viOpen
   c. viWrite/viRead
   d. viClose
0
回復
kiko
LV.5
7
2008-05-22 17:32
你使用LV編寫該程序,太好了;你可以從Chroma網站上下載Chroma 免費提供的LV 驅動,那裡面就有你要的資料﹒
0
回復
owen.zhao
LV.4
8
2008-05-22 19:41
@kiko
你使用LV編寫該程序,太好了;你可以從Chroma網站上下載Chroma免費提供的LV驅動,那裡面就有你要的資料﹒
1. 嚴格的說,樓主的流程直通從上到下,沒有基本邏輯判斷, 個人認為還算不上真正的程序, :-) 一起努力吧!
調用一個函數比較好的方法如下,才能即時跟蹤錯誤,:
if ((status = viOpenDefaultRM (&defaultRM)) < 0)
  return status;

2. "REMote OFF"沒實際意義, 好像只針對Rs232.
0
回復
2008-05-22 23:54
@owen.zhao
1.嚴格的說,樓主的流程直通從上到下,沒有基本邏輯判斷,個人認為還算不上真正的程序,:-)一起努力吧!調用一個函數比較好的方法如下,才能即時跟蹤錯誤,:if((status=viOpenDefaultRM(&defaultRM))<0)  returnstatus;2."REMoteOFF"沒實際意義,好像只針對Rs232.
我發的程序只是想說明我看到的現象,并不是完整的程序,
有條件的話,可以在VC運行上面的程序觀察一下是否看到一樣的現象
用NI提供的VISA軟件可以隨意DOWNLOAD,為什么我寫的這段小程序就不行呢
請針對這個問題展開討論
0
回復
owen.zhao
LV.4
10
2008-05-26 10:32
@warlosetemp
我發的程序只是想說明我看到的現象,并不是完整的程序,有條件的話,可以在VC運行上面的程序觀察一下是否看到一樣的現象用NI提供的VISA軟件可以隨意DOWNLOAD,為什么我寫的這段小程序就不行呢請針對這個問題展開討論
最後一貼
int main(void)

{
if ((status = viOpenDefaultRM (&defaultRM)) < 0) {
printf("Could not open a session to the VISA Resource Manager!\n");      
return status;
}

    if ((status= viOpen (defaultRM, "GPIB::7::INSTR", VI_NULL, VI_NULL, &inst))<0 {
printf ("An error occurred opening a session !\n");
return status;
}

if ((status = viWrite (inst, "*IDN?", 5, &numInstrs)) < 0){
printf ("An error occurred write command!\n");
return status;
}
if ((status = viScanf (instrSession, "%*[^,],%*[^,],%*[^,],%[^\n]", istringinstruct)) < 0)
printf ("An error occurred read command!\n");
return status;
    }
    else
printf("%s \n",stringinstruct;)  

    status = viClose (inst);
    status = viClose (defaultRM);  

    printf ("\nHit enter to continue.");
    fflush(stdin);
    getchar();

    return 0;  
}
0
回復
主站蜘蛛池模板: 女友任你躁国语自产在线播放 | 久久精品国产99国产毛片 | 色婷婷久 | 午夜免费看毛片 | 血肉之花在线 | 欧美日韩免费视频 | 免费高清一级毛片 | 男人和女人真曰批视频全过程 | 哥也色视频 | 亚洲色成人网站WWW永久男男 | 国产精品久久久久久久密密 | 免费的av网站在线观看国产精品 | 亚洲精品乱码久久久久久国产主播 | 国精偷拍一区二区三区 | 国产打女人屁股调教97 | 欧美国产日韩在线三区 | 男人把女人桶到爽爆的视频网站 | 免费a级毛片免费体验区 | 免费网站永久入口视频 | 国产自精品 | 911色_911色sss主站色播 | 黄色片一级免费看 | 老妇女人一级毛片 | 自拍偷拍欧美精品 | 亚洲香蕉影院 | 超碰人人美国 | 女人被添全过程A片 | 97国内揄拍国内精品对白 | 亚州黄色网址 | 麻豆果冻传媒精品国产av | 免费精品视频一区二区 | 99亚洲狠狠色综合久久位 | 人人爽影院 | 成人做爰9片免费看网站 | 啪啪午夜视频 | 欧美中文字幕一区二区三区 | 好婷婷网 | 农民人伦一区二区三区剧情简介 | 欧美视频裸体精品 | 国产一区不卡视频 | 红桃视频在线播放免费观看 |