📄 cmu200.cpp
字号:
status=viRead(cmu->pcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 )
{
status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm850, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
buf[num-1]=NULL;
temp=(AnsiString)buf;
if( temp.Pos("NAN") ) return false;
temp=temp.SubString(1, temp.Pos(",")-1);
*pow = atof(temp.c_str());
return true;
}
//=============================================================================
/////////////////////// Modulation //////////////////////////////////
//=============================================================================
bool cmu_mod_init( CMU_VAR *cmu )
{
strcpy(cmd, "init:mod");
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_config_control_mode( CMU_VAR *cmu, int count )
{
char str[256];
sprintf(str, "conf:mod:perr:cont scal,%d", count );
strcpy(cmd, str);
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_config_control_mode_8psk( CMU_VAR *cmu, int count )
{
char str[256];
sprintf(str, "conf:mod:perr:epsk:cont scal,%d", count );
strcpy(cmd, str);
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_overview_config_control_mode_8psk(CMU_VAR *cmu, int count)
{
char str[256];
// sprintf(str, "conf:mod:over:epsk:cont scal,%d", count);
sprintf(str, "CONF:MOD:EPSK:CONT SCAL,%d", count);
strcpy(cmd, str);
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_config_control_repetition( CMU_VAR *cmu, int count )
{
#if 0
char str[256];
sprintf( str, "conf:mod:cont:rep sing,none,none" );
strcpy(cmd, str);
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
#endif
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_config_control_repetition_8psk( CMU_VAR *cmu, int count )
{
#if 0
char str[256];
sprintf( str, "conf:mod:epsk:cont:rep sing,none,none" );
strcpy(cmd, str);
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
#endif
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_config_control_subarray( CMU_VAR *cmu, int sample )
{
char str[256];
sprintf( str, "conf:sub:mod:perr:gsmk:arit, 0, %d", sample );
strcpy(cmd, str);
if( (cmu->BAND).AnsiCompareIC("GSM")==0 ) status=viWrite(cmu->gsm, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 ) status=viWrite(cmu->dcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 ) status=viWrite(cmu->pcs, cmd, strlen(cmd), &num);
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 ) status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num);
if( status<VI_SUCCESS ) return false;
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_read(CMU_VAR *cmu, int category, double *mod)
{
AnsiString temp,temp_total,temp_other,temp_value;
AnsiString value1,value2,value3,value4,value5,value6,value7,value9;
AnsiString value10,value11,value12,value13,value14;
AnsiString value[14];
int i=0;
int as_num;
AnsiString as;
strcpy(cmd, "read:mod?");
if( (cmu->BAND).AnsiCompareIC("GSM")==0 )
{
status=viWrite(cmu->gsm, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 )
{
status=viWrite(cmu->dcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->dcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 )
{
status=viWrite(cmu->pcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->pcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 )
{
status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm850, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
buf[num-1]=NULL;
temp=(AnsiString)buf;
if( temp.Pos("NAN") ) return false;
for(i=0;i<10;i++)
{
temp_value=temp.SubString(1, temp.Pos(",")-1);
as_num= temp.AnsiPos(",");
value[i]=temp_value;
temp_total=temp.SubString(as_num+1, temp.Length());
temp=temp_total;
}
// *mod = atof(value[7].c_str());
*mod = atof(value[category].c_str());
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_read_8psk(CMU_VAR *cmu, int category, double *mod)
{
AnsiString temp,temp_total,temp_other,temp_value;
AnsiString value1,value2,value3,value4,value5,value6,value7,value9;
AnsiString value10,value11,value12,value13,value14;
AnsiString value[14];
int i=0;
int i_num;
AnsiString as;
strcpy(cmd, "read:mod:epsk?");
if( (cmu->BAND).AnsiCompareIC("GSM")==0 )
{
status=viWrite(cmu->gsm, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 )
{
status=viWrite(cmu->dcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->dcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 )
{
status=viWrite(cmu->pcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->pcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 )
{
status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm850, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
buf[num-1] = NULL;
temp = (AnsiString) buf;
if (temp.Pos("NAN"))
{
return false;
}
for (i=0; i<EPSK_MOD_PH_ERR_END; i++)
{
temp_value=temp.SubString(1, temp.Pos(",")-1);
i_num= temp.AnsiPos(",");
value[i]=temp_value;
temp_total=temp.SubString(i_num+1, temp.Length());
temp=temp_total;
}
*mod = atof(value[category].c_str());
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_overview_read_8psk(CMU_VAR *cmu, int category, double *mod)
{
AnsiString temp;
AnsiString temp_total;
AnsiString temp_value;
AnsiString value[EPSK_MOD_OVERVIEW_END];
int i_num;
strcpy(cmd, "read:mod:epsk?");
if( (cmu->BAND).AnsiCompareIC("GSM")==0 )
{
status=viWrite(cmu->gsm, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("DCS")==0 )
{
status=viWrite(cmu->dcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->dcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("PCS")==0 )
{
status=viWrite(cmu->pcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->pcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if( (cmu->BAND).AnsiCompareIC("GSM850")==0 )
{
status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm850, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
buf[num-1]=NULL;
temp=(AnsiString)buf;
if( temp.Pos("NAN") ) return false;
for(int i=0;i<18;i++)
{
temp_value=temp.SubString(1, temp.Pos(",")-1);
i_num= temp.AnsiPos(",");
value[i]=temp_value;
temp_total=temp.SubString(i_num+1, temp.Length());
temp=temp_total;
}
*mod = atof(value[category].c_str());
return true;
}
//-----------------------------------------------------------------------------
bool cmu_mod_overview_fetch_8psk(CMU_VAR *cmu, int category, double *mod)
{
AnsiString temp;
AnsiString temp_total;
AnsiString temp_value;
AnsiString value[EPSK_MOD_OVERVIEW_END];
int i_num;
// init
strcpy(cmd, "INIT:MOD:EPSK");
if ((cmu->BAND).AnsiCompareIC("GSM")==0)
{
status=viWrite(cmu->gsm, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
}
else if ((cmu->BAND).AnsiCompareIC("DCS")==0)
{
status=viWrite(cmu->dcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
}
else if ((cmu->BAND).AnsiCompareIC("PCS")==0)
{
status=viWrite(cmu->pcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
}
else if ((cmu->BAND).AnsiCompareIC("GSM850")==0)
{
status=viWrite(cmu->gsm850, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
}
// fetch
strcpy(cmd, "FETC:MOD:EPSK?");
if ((cmu->BAND).AnsiCompareIC("GSM")==0)
{
status=viWrite(cmu->gsm, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->gsm, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if ((cmu->BAND).AnsiCompareIC("DCS")==0)
{
status=viWrite(cmu->dcs, cmd, strlen(cmd), &num); if( status<VI_SUCCESS ) return false;
status=viRead(cmu->dcs, buf, BUF, &num); if( status<VI_SUCCESS ) return false;
}
else if ((cmu->BAND).AnsiCompareIC("PCS")==0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -