GPIB

void fun()
{
    double fDat[50];
    viPrintf(vi,"%,50f",fDat);
    //viVQueryf ;list pars
    //, Array Size. The comma operator is a format modifier that allows
    //you to read or write a comma-separated list of numbers (only valid
    //                                                        with %d and %f format codes). It is a comma followed by an integer.
    //The integer indicates the number of elements in the array. The
    //comma operator has the format of ,dd where dd is the number of
    //elements to read or write.
    //int list[5]={101,102,103,104,105};
    //viPrintf(vi, "%,5d\n", list);
    //d,f,s  (s,t,T)
    //This example receives data from the session specified by the vi parameter
    //and converts the data to a string.
    char data[180];
    viScanf(vi, "%t", data);
    if(status<VI_SUCCESS){
        TRACE("Error...\n");
    }  
    //    viGpibControlATN  ATN line
    //            VI_GPIB_REN_ADDRESS_GTL
    //            viPrintf(m_gpib.vi_SMIQ,"DM:IQ:STATE ON\n");off
    //            interface clear line (IFC)
    //            viGpibSendIFC
    //初始化信号源
    viPrintf(vi_SMIQ,"FREQ 1000MHZ\n");
    viPrintf(vi_SMIQ,"POW -50dBm\n");//cal:0
    viPrintf(vi_SMIQ,"OUTP:STAT ON\n");//RF ON
    
    viPrintf(vi_SMIQ,"MOD:STATE OFF\n");
    
    //初始化频谱仪
    
    viPrintf(vi_FSP,"SYST:DISP:UPDate ON\n");
    // viPrintf(vi_FSP,"SYST:PSAVE ON\n"); 
    viPrintf(vi_FSP,"DISP:WIND:TRAC:Y:RLEV -10DBM\n");
    viPrintf(vi_FSP,"DISP:TRAC:Y:RLEV:OFFS 0\n");
    viPrintf(vi_FSP,"FREQ:SPAN 20MHZ\n");
    viPrintf(vi_FSP,"FREQ:CENT 999MHZ\n");
    viPrintf(vi_FSP,"INIT;*WAI\n");
    viPrintf(vi_FSP,"CALC:MARK:MAX\n");
    viPrintf(vi_FSP, "BAND:VID:AUTO ON\n");//BAND:VID 300kHz
    viPrintf(vi_FSP, "BAND:RES:AUTO ON\n");
    // viPrintf(vi, "SWE:TIME 100ms\n");
    //Boonton 功率计
    /* viPrintf(vi_Boonton,"SENS:CORR:OFFS 31\n");//外部补偿电平 db!!!!ok
viPrintf(vi_Boonton,"DISP:TRAC:VCENT 55dBm\n");//参考电平 
viPrintf(vi_Boonton,"TRIG:LEV 40dBm\n");//触发电平 dBm
viPrintf(vi_Boonton,"TRIG:DEL 0\n");//触发事件位置us   ns/div us/div ms/div
viPrintf(vi_Boonton,"DISP:PULS:TIMEBASE 10us\n");//时间单位 (moren s) 100us
viPrintf(vi_Boonton,"DISP:TRAC:VSCALe 5dB\n");//db/格  db dBm,dBV,dBmV,dbuV dBuV

//*/ //设置信号源
    viPrintf(m_gpib.vi_SMIQ, "FREQ %dMHZ\n",m_tab2.m_freq);
    viPrintf(m_gpib.vi_SMIQ, "POW %dBm\n",m_tab2.m_pow);
    //设置频谱仪
    viPrintf(m_gpib.vi_FSP, "FREQ:CENT %dMHZ\n",m_tab2.m_cent_freq);
    viPrintf(m_gpib.vi_FSP, "FREQ:SPAN %dMHZ\n",m_tab2.m_span);
    viPrintf(m_gpib.vi_FSP, "BAND:RES %dMHz\n",m_tab2.m_rbw);
    viPrintf(m_gpib.vi_FSP, "BAND:VID %dkHz\n",m_tab2.m_vbw);
    viPrintf(m_gpib.vi_FSP, "DISP:WIND:TRAC:Y:RLEV %ddBm\n",m_tab2.m_ref); viPrintf(pView->m_gpib.vi_SMIQ,"FREQ %dMHZ\n",freq); 
    // viPrintf(pView->m_gpib.vi_SMIQ,"*WAI\n");
    viPrintf(pView->m_gpib.vi_FSP,"FREQ:CENT %dMHZ\n",freq); 
    viPrintf(pView->m_gpib.vi_FSP,"*WAI\n");
    viPrintf(pView->m_gpib.vi_FSP,"INIT:CONT OFF\n");
    viPrintf(pView->m_gpib.vi_FSP,"INIT:IMM;*WAI\n");
    viPrintf(pView->m_gpib.vi_FSP,"CALC:MARK:MAX\n");
    viPrintf(pView->m_gpib.vi_FSP,"*WAI\n");
    viQueryf(pView->m_gpib.vi_FSP,"CALC:MARK:Y?\n","%t",buf); 
    viPrintf(pView->m_gpib.vi_FSP,"*WAI\n");
    
    
    
    viPrintf(pView->m_gpib.vi_FSP,"DISP:WIND:TRAC:Y:RLEV -10dBm\n"); 
    viSetAttribute(viPSA,VI_ATTR_TMO_VALUE,60000);
    viQueryf(viPSA,"*ESR?\n","%ld",&esr);
    viQueryf(viSA, "*OPC?\n", "%d", &lOpc);  if (!lOpc)  {  
                printf("\nProgram Abort! error ocurred: last command was not completed!\n");  
                exit(0);  
                                                         } 
    //        viQuery(vi,writeFmt,"%s,%s",buf1,buf2,...);
}

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值