微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > 虚拟仪器 > 请问,打开设备都用MAX中的那个设备名啊?

请问,打开设备都用MAX中的那个设备名啊?

时间:12-13 整理:3721RD 点击:
  这个设备是 Tektronix 的 AFG 3021B 信号发生器,装了一堆乱起八糟的驱动啥的,应该驱动是装上了,用LabvIEW里的例子,能控制它产生信号
用 VISA wizard 已经安装好了驱动,在Windows的设备管理器中已经看到驱动装好了
在MAX中,有几个地方都能看到设备,如图所示
  1。设备和接口中:
  2. IVI Drivers
        Driver Session
  我现在是用Measurement Studio来操作他, 用VS2005 中建立 MFC Application 工程, 其中一 步让你勾选 需要包括的头文件啥的,里边正好就有AFG3K的选项。
   然后生成一个按钮生成函数, 函数体中我用AFG3K 的中一个Labwindows CVI例子:
main()
{
  ViSession   tkafg3k;
    ViStatus    error = VI_SUCCESS;
    ViString    popUpMsg = "The function generator is outputting the waveform "  
                           "that you configured.\n\nPress <Enter> to continue";
        /*
            If you want to run this sample program and the instrument is not
            present, set the Simulate flag to 1.  (Example:  "Simulate = 1")
        */
/*
    checkErr( tkafg3k_InitWithOptions ("GPIB::11::INSTR", VI_TRUE, VI_TRUE,
                                        "Simulate=0,RangeCheck=1,QueryInstrStatus=1,Cache=1",
                                        &tkafg3k));
*/
    checkErr( tkafg3k_init("USB0::0x0699::0x0346::C030993::INSTR", VI_FALSE, VI_TRUE, &tkafg3k));
//    checkErr( tkafg3k_init("AFG_3021B", VI_FALSE, VI_TRUE, &tkafg3k));
//    checkErr( tkafg3k_init("mxwUSB0::0x0699::0x0346::C030993::INSTR", VI_FALSE, VI_TRUE, &tkafg3k));
   /*
    checkErr( tkafg3k_ConfigureOperationMode (tkafg3k, "1", TKAFG3K_VAL_OPERATE_CONTINUOUS));
    checkErr( tkafg3k_ConfigureOutputMode (tkafg3k, TKAFG3K_VAL_OUTPUT_FUNC));
    checkErr( tkafg3k_ConfigureStandardWaveform (tkafg3k, "1",
                                                 TKAFG3K_VAL_WFM_SINE, 1.0, 0.0,
                                                 1000000.0, 0.0));
    checkErr( tkafg3k_ConfigureOutputEnabled (tkafg3k, "1", VI_TRUE));                                              
    MessagePopup ("Message", popUpMsg);
    */                                    
Error:
    if (error != VI_SUCCESS)
        {
            ViChar   errStr[2048];
        //    tkafg3k_GetError (tkafg3k, &error, 2048, errStr);
        //    MessagePopup ("Error!", errStr);
        }
    if (tkafg3k)
        tkafg3k_close (tkafg3k);
}
把其中驱动名称的改成了现在MAX中看到的,但是不行,最后报错是
Hex 0xBFFF0011  位置信息不足或系统中不存在改设备或资源
Hex 0xBFFF003E  由于I/O错误,讲无法执行该操作
从 帮助文件中看到错误代码的含义是:
Numeric Range (in Hex)   Status Code Types    
-------------------------------------------------
3FFA2000 to 3FFA3FFF     IviFgen  Warnings
3FFA0000 to 3FFA1FFF     IVI      Warnings
3FFF0000 to 3FFFFFFF     VISA     Warnings
3FFC0000 to 3FFCFFFF     VXIPnP   Driver Warnings
BFFA2000 to BFFA3FFF     IviFgen  Errors
BFFA0000 to BFFA1FFF     IVI      Errors
BFFF0000 to BFFFFFFF     VISA     Errors
BFFC0000 to BFFCFFFF     VXIPnP   Driver Errors

  
  

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top