⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 e4406dlg.cpp

📁 GPIB卡控制安捷伦频谱分析仪4406测试各频点功率代码包。
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		MessageBox(msg,"HP E4406 错误代码",MB_OK);
		if (hpE4406 != VI_NULL )
		{
           hpe4406_error_message(hpE4406,hpE4406_err_status,hpE4406_err_msg);
		    MessageBox(hpE4406_err_msg,"HP E4406 错误信息",MB_OK);
    	}
		return;
	}
}
void CE4406Dlg::InstruConfig()
{
	hpe4406_InstrumentSetApplication(hpE4406,hpe4406_APPLICATION_CDMA2K);
	hpe4406_Radio_CDMA2KSetConditions(hpE4406,hpe4406_RADIO_DEVICE_BTS);
	hpe4406_Input_CDMA2KSetConditions(hpE4406,hpe4406_RADIO_DEVICE_BTS,40,0,VI_TRUE,100);
	hpe4406_CDMA2K_CDPSetWalshCodeParms(hpE4406,64,0);
	hpe4406_FrequencySetCenter(hpE4406,8.7849e8);
}

void CE4406Dlg::OnTrig() 
{
	FILE * logfile_CHP;
	FILE * logfile_RHO;

	if((logfile_CHP=fopen("码域功率记录.txt","w"))==NULL){
		exit(1);
	}
	fclose(logfile_CHP);
	if((logfile_RHO=fopen("RHO记录.txt","w"))==NULL){
		exit(1);
	}
	fclose(logfile_RHO);
	fopen("码域功率记录.txt","w");
	fprintf(logfile_CHP,"码域功率测试记录:\n");
	fclose(logfile_CHP);
	fopen("RHO记录.txt","w");
	fprintf(logfile_RHO,"RHO测试记录:\n");
	fclose(logfile_RHO);
	for(int i=0;i<3;i++)
	{
		TestCodePower();
		TestRHO();
	}
//	ShellExecute(NULL,"open","码域功率记录.txt",NULL,NULL,SW_SHOWNORMAL);
//	ShellExecute(NULL,"open","RHO记录.txt",NULL,NULL,SW_SHOWNORMAL);

//	TestPower();
//	Test2();
}

void CE4406Dlg::TestRHO()
{
	ViReal64  CDMA2K_ModAccResults[7];
	ViInt32 size=0;
//	hpe4406_CDMA2K_ModAccConfigure(hpE4406);
	CString start_Year,start_Month,start_Date,start_Hour,start_Minute,start_Second;
	CString end_Year,end_Month,end_Date,end_Hour,end_Minute,end_Second;
	FILE * logfile_RHO;
	if((logfile_RHO=fopen("RHO记录.txt","a"))==NULL){
		exit(1);
	}
	fclose(logfile_RHO);
	
	fopen("RHO记录.txt","a");
	CTime start_time = CTime::GetCurrentTime();
	start_Year=start_time.Format("%Y");
	start_Month=start_time.Format("%m");
	start_Date=start_time.Format("%d");
	start_Hour=start_time.Format("%H");
	start_Minute=start_time.Format("%M");
	start_Second=start_time.Format("%S");

	int n=::GetTickCount();

	hpe4406_CDMA2K_ModAccMeasureTrace(hpE4406,60,1,1,CDMA2K_ModAccResults,7,&size);

	m_nTime=::GetTickCount()-n;
	CTime end_time = CTime::GetCurrentTime();
	end_Year=end_time.Format("%Y");
	end_Month=end_time.Format("%m");
	end_Date=end_time.Format("%d");
	end_Hour=end_time.Format("%H");
	end_Minute=end_time.Format("%M");
	end_Second=end_time.Format("%S");

	m_RHO=CDMA2K_ModAccResults[6];
	UpdateData(FALSE);
	UpdateWindow();

//输出
	fprintf(logfile_RHO,"开始测试时间:%s年%s月%s日%s时%s分%s秒\n",start_Year,start_Month,start_Date,start_Hour,start_Minute,start_Second);

	fprintf(logfile_RHO,"\n测试结果:RHO=\t%5.9f\n",CDMA2K_ModAccResults[6]);
	fprintf(logfile_RHO,"结束测试时间:%s年%s月%s日%s时%s分%s秒\n",end_Year,end_Month,end_Date,end_Hour,end_Minute,end_Second);
	fclose(logfile_RHO);
//	ShellExecute(NULL,"open","记录.txt",NULL,NULL,SW_SHOWNORMAL);
}

void CE4406Dlg::TestCodePower()
{
//	ViReal64*  CDMA2K_CDPDataResults=new ViReal64[64];
//	for(int j=0;j<64;j++)
//		CDMA2K_CDPDataResults[j]=0;
	ViReal64 CDMA2K_CDPDataResults[64];
	ViInt32 size;
//	hpe4406_CDMA2K_CDPConfigure(hpE4406);
	unsigned long n;
	CString start_Year,start_Month,start_Date,start_Hour,start_Minute,start_Second;
	CString end_Year,end_Month,end_Date,end_Hour,end_Minute,end_Second;
	FILE * logfile_CHP;
	if((logfile_CHP=fopen("码域功率记录.txt","a"))==NULL){
		exit(1);
	}
	fclose(logfile_CHP);
	fopen("码域功率记录.txt","a");

	
	CTime start_time = CTime::GetCurrentTime();
	start_Year=start_time.Format("%Y");
	start_Month=start_time.Format("%m");
	start_Date=start_time.Format("%d");
	start_Hour=start_time.Format("%H");
	start_Minute=start_time.Format("%M");
	start_Second=start_time.Format("%S");

	n=::GetTickCount();
	hpe4406_CDMA2K_CDPSetWalshCodeParms(hpE4406,64,0);
	hpe4406_CDMA2K_CDPMeasureTrace(hpE4406,60,hpe4406_READ,2,CDMA2K_CDPDataResults,64,&size);
	
	m_nTime=::GetTickCount()-n;
	CTime end_time = CTime::GetCurrentTime();
	end_Year=end_time.Format("%Y");
	end_Month=end_time.Format("%m");
	end_Date=end_time.Format("%d");
	end_Hour=end_time.Format("%H");
	end_Minute=end_time.Format("%M");
	end_Second=end_time.Format("%S");

	m_0=CDMA2K_CDPDataResults[0];
	m_1=CDMA2K_CDPDataResults[1];
	m_2=CDMA2K_CDPDataResults[2];
	m_3=CDMA2K_CDPDataResults[3];
	m_4=CDMA2K_CDPDataResults[4];
	m_5=CDMA2K_CDPDataResults[5];
	m_6=CDMA2K_CDPDataResults[6];
	m_7=CDMA2K_CDPDataResults[7];
	m_8=CDMA2K_CDPDataResults[8];
	m_9=CDMA2K_CDPDataResults[9];
	m_10=CDMA2K_CDPDataResults[10];
	m_11=CDMA2K_CDPDataResults[11];
	m_12=CDMA2K_CDPDataResults[12];
	m_13=CDMA2K_CDPDataResults[13];
	m_14=CDMA2K_CDPDataResults[14];
	m_15=CDMA2K_CDPDataResults[15];
	m_16=CDMA2K_CDPDataResults[16];
	m_17=CDMA2K_CDPDataResults[17];
	m_18=CDMA2K_CDPDataResults[18];
	m_19=CDMA2K_CDPDataResults[19];
	m_20=CDMA2K_CDPDataResults[20];
	m_21=CDMA2K_CDPDataResults[21];
	m_22=CDMA2K_CDPDataResults[22];
	m_23=CDMA2K_CDPDataResults[23];
	m_24=CDMA2K_CDPDataResults[24];
	m_25=CDMA2K_CDPDataResults[25];
	m_26=CDMA2K_CDPDataResults[26];
	m_27=CDMA2K_CDPDataResults[27];
	m_28=CDMA2K_CDPDataResults[28];
	m_29=CDMA2K_CDPDataResults[29];
	m_30=CDMA2K_CDPDataResults[30];
	m_31=CDMA2K_CDPDataResults[31];
	m_32=CDMA2K_CDPDataResults[32];
	m_33=CDMA2K_CDPDataResults[33];
	m_34=CDMA2K_CDPDataResults[34];
	m_35=CDMA2K_CDPDataResults[35];
	m_36=CDMA2K_CDPDataResults[36];
	m_37=CDMA2K_CDPDataResults[37];
	m_38=CDMA2K_CDPDataResults[38];
	m_39=CDMA2K_CDPDataResults[39];
	m_40=CDMA2K_CDPDataResults[40];
	m_41=CDMA2K_CDPDataResults[41];
	m_42=CDMA2K_CDPDataResults[42];
	m_43=CDMA2K_CDPDataResults[43];
	m_44=CDMA2K_CDPDataResults[44];
	m_45=CDMA2K_CDPDataResults[45];
	m_46=CDMA2K_CDPDataResults[46];
	m_47=CDMA2K_CDPDataResults[47];
	m_48=CDMA2K_CDPDataResults[48];
	m_49=CDMA2K_CDPDataResults[49];
	m_50=CDMA2K_CDPDataResults[50];
	m_51=CDMA2K_CDPDataResults[51];
	m_52=CDMA2K_CDPDataResults[52];
	m_53=CDMA2K_CDPDataResults[53];
	m_54=CDMA2K_CDPDataResults[54];
	m_55=CDMA2K_CDPDataResults[55];
	m_56=CDMA2K_CDPDataResults[56];
	m_57=CDMA2K_CDPDataResults[57];
	m_58=CDMA2K_CDPDataResults[58];
	m_59=CDMA2K_CDPDataResults[59];
	m_60=CDMA2K_CDPDataResults[60];
	m_61=CDMA2K_CDPDataResults[61];
	m_62=CDMA2K_CDPDataResults[62];
	m_63=CDMA2K_CDPDataResults[63];

	UpdateData(FALSE);
	UpdateWindow();

//输出
	fprintf(logfile_CHP,"开始测试时间:%s年%s月%s日%s时%s分%s秒\n",start_Year,start_Month,start_Date,start_Hour,start_Minute,start_Second);

	for(int i=0;i<64;i++)
	{
		if(i%8==0)
			fprintf(logfile_CHP,"\n");
		fprintf(logfile_CHP,"\t%5.2f\t",CDMA2K_CDPDataResults[i]);
	}
	fprintf(logfile_CHP,"\n");
	fprintf(logfile_CHP,"结束测试时间:%s年%s月%s日%s时%s分%s秒\n",end_Year,end_Month,end_Date,end_Hour,end_Minute,end_Second);

	fclose(logfile_CHP);
}

void CE4406Dlg::TestPower()
{
	ViPReal64  waveformSampleTime=new ViReal64;
	ViPReal64  waveformMeanPower=new ViReal64;
	ViPReal64  waveformMeanPowerAveraged=new ViReal64;
	ViPInt32  waveformSamples=new ViInt32;
	ViPReal64  waveformPeakMeanRatio=new ViReal64;
	ViPReal64  waveformPowerMax=new ViReal64;
	ViPReal64  waveformPowerMin=new ViReal64;
	unsigned long n;
	n=::GetTickCount();
//	hpe4406_SpectrumConfigure(hpE4406);
//	hpe4406_WaveformMeasureTrace(hpE4406,60,hpe4406_READ,1,waveformDataResults,7,&size);
//	int j=0;
//	for(j=0;j<100;j++)
		hpe4406_WaveformMeasure(hpE4406,60,hpe4406_FETCH,waveformSampleTime,waveformMeanPower,waveformMeanPowerAveraged,waveformSamples,waveformPeakMeanRatio,waveformPowerMax,waveformPowerMin);
//	m_fResult=*waveformMeanPower;
	m_nTime=::GetTickCount()-n;
	UpdateData(FALSE);
	FILE * logfile_CHP;
	if((logfile_CHP=fopen("记录.txt","w"))==NULL){
		exit(1);
	}
	fclose(logfile_CHP);
	
	fopen("记录.txt","w");

//输出
//	for(int i=0;i<100;i++)
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformSampleTime);
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformMeanPower);
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformMeanPowerAveraged);
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformSamples);
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformPeakMeanRatio);
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformPowerMax);
		fprintf(logfile_CHP,"\n\t%5.6f\n",*waveformPowerMin);
	fclose(logfile_CHP);
	ShellExecute(NULL,"open","记录.txt",NULL,NULL,SW_SHOWNORMAL);
}

void CE4406Dlg::Test()
{
	ViPReal64 centerFrequencyQuery=new ViReal64;
	int n=::GetTickCount();
	for(int i=0;i<100;i++){
//		hpe4406_FrequencySetCenter(hpE4406,8e8);
//		hpe4406_FrequencyGetCenter(hpE4406,centerFrequencyQuery);
//		viQueryf(hpE4406,"*IDN?\n","%t", buf);	
	//	hpe4406_cmd(hpE4406, "*CLS");
	}
	m_nTime=::GetTickCount()-n;
//	m_fResult=*centerFrequencyQuery;
	UpdateData(FALSE);
}

void CE4406Dlg::Test2()
{
	ViReal64 CDMA2K_CDPDataResults[64];
	ViInt32 size;
//	hpe4406_CDMA2K_CDPConfigure(hpE4406);
	unsigned long n;
	n=::GetTickCount();
//	for(int i=0;i<100;i++){
//		hpe4406_CDMA2K_CDPConfigure(hpE4406);
	hpe4406_CDMA2K_CDPSetWalshCodeParms(hpE4406,64,0);
	hpe4406_CDMA2K_CDPMeasureTrace(hpE4406,60,hpe4406_FETCH,2,CDMA2K_CDPDataResults,64,&size);
//	}
//	m_fResult=CDMA2K_CDPDataResults[0];
	m_nTime=::GetTickCount()-n;
	UpdateData(FALSE);
	FILE * logfile_CHP;
	if((logfile_CHP=fopen("记录.txt","w"))==NULL){
		exit(1);
	}
	fclose(logfile_CHP);
	
	fopen("记录.txt","w");

//输出
	for(int i=0;i<64;i++)
		fprintf(logfile_CHP,"\n\t%5.2f",CDMA2K_CDPDataResults[i]);
	fclose(logfile_CHP);
	ShellExecute(NULL,"open","记录.txt",NULL,NULL,SW_SHOWNORMAL);

}

void CE4406Dlg::OnOk() 
{
	// TODO: Add your control notification handler code here
	CDialog::OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -