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

📄 test880dlg.cpp

📁 关于VC的一个测试程序
💻 CPP
📖 第 1 页 / 共 2 页
字号:
 	{
 		m_dsy4.LoadBitmaps(IDB_RED);
 		m_dsy4.RedrawWindow();
	}
 
 	GetRR1(kh,2,&rr1);
 	for(i=0;i<16;i++)
 	{
 		flag=(rr1>>i)&1;
 		if(flag==1)
 		 GetRR11[i]=1;
 		else
 		 GetRR11[i]=0;
 	}
	//读电机报警状态
     if(GetRR11[14]==1)
 	{
 		m_y11.LoadBitmaps(IDB_GREEEN);
 		m_y11.RedrawWindow();
 	}
 	else
 	{
 		m_y11.LoadBitmaps(IDB_RED);
		m_y11.RedrawWindow();
 	}
 	//停止状态
 	d15=ReadEMG(kh,2);
 	if(d15==1)
 	{
 		m_y12.LoadBitmaps(IDB_GREEEN);
 		m_y12.RedrawWindow();
 	}
 	else
 	{
		m_y12.LoadBitmaps(IDB_RED);
 		m_y12.RedrawWindow();
 	}
     //读电机速度状态
	if(GetRR11[2]==1)
 	{
 		m_y8.LoadBitmaps(IDB_GREEEN);
 		m_y8.RedrawWindow();
 	}
 	else
 	{
 		m_y8.LoadBitmaps(IDB_RED);
 		m_y8.RedrawWindow();
 	}
 		if(GetRR11[3]==1)
 	{
 		m_y9.LoadBitmaps(IDB_GREEEN);
		m_y9.RedrawWindow();
 	}
 	else
	{
		m_y9.LoadBitmaps(IDB_RED);
 		m_y9.RedrawWindow();
 	}
 	if(GetRR11[4]==1)
 	{
 		m_y10.LoadBitmaps(IDB_GREEEN);
 		m_y10.RedrawWindow();
 	}
 	else
 	{
 		m_y10.LoadBitmaps(IDB_RED);
 		m_y10.RedrawWindow();
 	}
 		
 	
}

void CTest880Dlg::RendengX()
{
	int GetRR11[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
	int GetRR21[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
	int GetRR41[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
	unsigned short rr1,i,rr2,rr4;
	int d15,flag;
	
	//通用输入状态
    
	int getbit[4]={0};
	for(i=1;i<3;i++)
	{
		getbit[i]=ReadBIT(kh,1,i);
	}
	if(getbit[1]==0)
	{
		m_x3.LoadBitmaps(IDB_GREEEN);
		m_x3.RedrawWindow();
	}
	else
	{
		m_x3.LoadBitmaps(IDB_RED);
		m_x3.RedrawWindow();
	}
	if(getbit[2]==0)
	{
		m_x4.LoadBitmaps(IDB_GREEEN);
		m_x4.RedrawWindow();
	}
	else
	{
		m_x4.LoadBitmaps(IDB_RED);
		m_x4.RedrawWindow();
	}
	
	//通用点动状态
	GetRR4(kh,&rr4);
	for(i=0;i<16; i++)
	{
		flag=(rr4>>i)&1;
		if(flag==1)
			GetRR41[i]=1;
		else
			GetRR41[i]=0;
	}
	if(GetRR41[4]==0)
	{
		m_x6.LoadBitmaps(IDB_GREEEN);
		m_x6.RedrawWindow();
	}
	else
	{
		m_x6.LoadBitmaps(IDB_RED);
		m_x6.RedrawWindow();
	}
	if(GetRR41[5]==0)
	{
		m_x7.LoadBitmaps(IDB_GREEEN);
		m_x7.RedrawWindow();
	}
	else
	{
		m_x7.LoadBitmaps(IDB_RED);
		m_x7.RedrawWindow();
	}
    
	//读硬件限位
	int getLMT=ReadLMT(kh,1);
    if(getLMT==1)
	{
		m_dsx1.LoadBitmaps(IDB_GREEEN);
		m_dsx1.RedrawWindow();
	}
	 if(getLMT==2)
	{
		m_dsx2.LoadBitmaps(IDB_GREEEN);
		m_dsx2.RedrawWindow();
	}
	 if(getLMT==0)
	{
		m_dsx1.LoadBitmaps(IDB_RED);
		m_dsx2.LoadBitmaps(IDB_RED);
		m_dsx1.RedrawWindow();
		m_dsx2.RedrawWindow();
	}
	 
	 //读紧急制动信号
	 GetRR2(kh,1,&rr2);
	for(i=0;i<16;i++)
	{
		flag=(rr2>>i)&1;
		if(flag==1)
			GetRR21[i]=1;
		else
			GetRR21[i]=0;
	}
	if(GetRR21[5]==1)
	{
		m_dsx5.LoadBitmaps(IDB_GREEEN);
		m_dsx5.RedrawWindow();
	}
	else
	{
		m_dsx5.LoadBitmaps(IDB_RED);
		m_dsx5.RedrawWindow();
	}
	//读报警信号
	if(GetRR21[4]==1)
	{
		m_dsx6.LoadBitmaps(IDB_GREEEN);
		m_dsx6.RedrawWindow();
	}
	else
	{
		m_dsx6.LoadBitmaps(IDB_RED);
		m_dsx6.RedrawWindow();
	}
	//读软限位
	if(GetRR21[0]==1)
	{
		m_dsx3.LoadBitmaps(IDB_GREEEN);
		m_dsx3.RedrawWindow();
	}
	else
	{
		m_dsx3.LoadBitmaps(IDB_RED);
		m_dsx3.RedrawWindow();
	}
	if(GetRR21[1]==1)
	{
		m_dsx4.LoadBitmaps(IDB_GREEEN);
		m_dsx4.RedrawWindow();
	}
	else
	{
		m_dsx4.LoadBitmaps(IDB_RED);
		m_dsx4.RedrawWindow();
	}

	GetRR1(kh,1,&rr1);
	for(i=0;i<16;i++)
	{
		flag=(rr1>>i)&1;
		if(flag==1)
		 GetRR11[i]=1;
		else
		 GetRR11[i]=0;
	}
	//读电机报警状态
    if(GetRR11[14]==1)
	{
		m_x11.LoadBitmaps(IDB_GREEEN);
		m_x11.RedrawWindow();
	}
	else
	{
		m_x11.LoadBitmaps(IDB_RED);
		m_x11.RedrawWindow();
	}
	//停止状态
	d15=ReadEMG(kh,1);
	if(d15==1)
	{
		m_x12.LoadBitmaps(IDB_GREEEN);
		m_x12.RedrawWindow();
	}
	else
	{
		m_x12.LoadBitmaps(IDB_RED);
		m_x12.RedrawWindow();
	}
    //读电机速度状态
	if(GetRR11[2]==1)
	{
		m_x8.LoadBitmaps(IDB_GREEEN);
		m_x8.RedrawWindow();
	}
	else
	{
		m_x8.LoadBitmaps(IDB_RED);
		m_x8.RedrawWindow();
	}
		if(GetRR11[3]==1)
	{
		m_x9.LoadBitmaps(IDB_GREEEN);
		m_x9.RedrawWindow();
	}
	else
	{
		m_x9.LoadBitmaps(IDB_RED);
		m_x9.RedrawWindow();
	}
	if(GetRR11[4]==1)
	{
		m_x10.LoadBitmaps(IDB_GREEEN);
		m_x10.RedrawWindow();
	}
	else
	{
		m_x10.LoadBitmaps(IDB_RED);
		m_x10.RedrawWindow();
	}
		
}

void CTest880Dlg::OnTzh() 
{
KillTimer(m_timer);	
}

void CTest880Dlg::OnQl() 
{
	m_rax=0;
	m_rvx=0;
	m_rlx=0;
	m_ray=0;
	m_rvy=0;
	m_rly=0;

	SetLP(kh,1,0);
	SetLP(kh,2,0);
    UpdateData(FALSE);
	
}

              
void CTest880Dlg::OnDx1() 
{
	x4++;
	if (x4%2==0)//低,亮
	{
	m_x1.LoadBitmaps(IDB_LOW);
	m_x1.RedrawWindow();
    //outputx=(outputx&0xE);
	if(zh==1)
	SetOUTBIT(kh,zh,1,0); 
	}
	else//高
	{
		m_x1.LoadBitmaps(IDB_HIGH);
		m_x1.RedrawWindow();
		//outputx=(outputx|0x1);
		if(zh==1)
		SetOUTBIT(kh,zh,1,1); 
	}
}

void CTest880Dlg::OnDx2() 
{
		x3++;
	if (x3%2==0)//低
	{
	m_x2.LoadBitmaps(IDB_LOW);
	m_x2.RedrawWindow();
    //outputx=(outputx&0xD);
	if(zh==1)SetOUTBIT(kh,zh,2,0); 
	 }
	else//高
	{
		m_x2.LoadBitmaps(IDB_HIGH);
		m_x2.RedrawWindow();
		//outputx=(outputx|0x2);
		if(zh==1)SetOUTBIT(kh,zh,2,1); 
	}
}





void CTest880Dlg::OnDy1() 
{
	y4++;
	if (y4%2==0)//低
	{
	m_y1.LoadBitmaps(IDB_LOW);
	m_y1.RedrawWindow();
    //outputy=(outputy&0xE);
	if(zh==2)SetOUTBIT(kh,zh,1,0);
	 }
	else//高
	{
		m_y1.LoadBitmaps(IDB_HIGH);
		m_y1.RedrawWindow();
		//outputy=(outputy|0x1);
		if(zh==2)SetOUTBIT(kh,zh,1,1);
	}	
}

void CTest880Dlg::OnDy2() 
{
	y3++;
	if (y3%2==0)//低
	{
	m_y2.LoadBitmaps(IDB_LOW);
	m_y2.RedrawWindow();
    //outputy=(outputy&0xD);
	if(zh==2)SetOUTBIT(kh,zh,2,0);
	 }
	else//高
	{
		m_y2.LoadBitmaps(IDB_HIGH);
		m_y2.RedrawWindow();
		//outputy=(outputy|0x2);
		if(zh==2)SetOUTBIT(kh,zh,2,1);
	}
}






void CTest880Dlg::OnXw() 
{
	UpdateData (true);
int m_uxw1;
int m_dxw1;
m_uxw1=m_uxw;
m_dxw1=m_dxw+1;
UINT fs;
fs=GetCheckedRadioButton(IDC_LUOJI,IDC_SHIJI);
switch(fs)
{
case IDC_LUOJI:
   SetCP(kh,zh,m_uxw1,0);
   SetCM(kh,zh,m_dxw1,0);
   break;
case IDC_SHIJI:
	SetCP(kh,zh,m_uxw1,1);
   SetCM(kh,zh,m_dxw1,1);
   break;
}
}

void CTest880Dlg::OnExit() 
{
OnOK();
}

void CTest880Dlg::OnJt() 
{
InstStop(kh,zh);	
}

void CTest880Dlg::OnQx() 
{
Cspeed s;
s.DoModal();

}




//DEL void CTest880Dlg::OnHanddec() 
//DEL {
//DEL     //SetD(kh,zh,125);
//DEL 	HandDec(kh,zh,5000);
//DEL 	
//DEL }

void CTest880Dlg::OnSetm() 
{
int m;
UpdateData(true);
m=m_m;
	int n;
n=	SetM(kh,zh,m);

	
}

void CTest880Dlg::OnAutodec() 
{
AutoDec(kh,zh);	
}

void CTest880Dlg::OnButton5() 
{
UpdateData(true);
int m;
m=m_bits;	
SetOUTBYTE(kh,zh,m);	
}

void CTest880Dlg::OnReadbyte() 
{
m_readbyte=ReadBYTE(kh,zh);
UpdateData(false);
}

void CTest880Dlg::OnDvout() 
{
Set_DV(kh,zh,126,3000,3000,10000);
	DV_OutEnable(kh,zh);
	

}

void CTest880Dlg::OnStopout() 
{
StopOutControl(kh,zh);	
}

void CTest880Dlg::OnLvout() 
{
	Set_LV(kh,zh,126,3000,3000);
LV_OutEnable(kh,zh);
	
	
}

void CTest880Dlg::OnButton4() 
{
ClearCP(kh,zh);
ClearCM(kh,zh);	
}

void CTest880Dlg::OnButton6() 
{
UINT kh=m_kh.GetCurSel();
::kh=kh;
int value;	
value=Open882(kh);
if(value==-1)
{
	MessageBox("打开设备失败");
}
else
{
}
}

void CTest880Dlg::OnButton7() 
{
Close882(kh);	
}

void CTest880Dlg::OnXianweimoshi() 
{
int value1,value2,value3;
	value1=m_lmtmd.GetCurSel();
	value2=m_hlmt1.GetCurSel();
	value3=m_hlmt2.GetCurSel();
	switch(value1)
	{
	case 0:
		LMTMD(kh,zh,1);
		break;
	case 1:
		LMTMD(kh,zh,0);
		break;
	}
	switch(value2)
	{
		
	case 0:
		HLMT(kh,zh,1,0);
		break;
	case 1:
		HLMT(kh,zh,1,1);
		break;
	}
	switch(value3)
	{
	case 0:
		HLMT(kh,zh,2,0);
		break;
	case 1:
		HLMT(kh,zh,2,1);
		break;
	}
}

void CTest880Dlg::OnIntenablecomp() 
{
Int_Enable_Comp(kh,zh);	
}

void CTest880Dlg::OnIntdisablecomp() 
{
Int_Disable_Comp(kh,zh);	
}

void CTest880Dlg::On365inable() 
{
Int365_Enable(kh);	
}

void CTest880Dlg::On365disable() 
{
Int365_Disable(kh);	
}

void CTest880Dlg::OnIsr() 
{
//ISR(kh);	
	InterruptSet(kh);
}

void CTest880Dlg::OnIntpulse() 
{
//IntPulse(kh,zh);	

}
double FunctionC(double x)
{
	double y;
	 y=6*x+2;
	 return y;
}
void CTest880Dlg::OnButton8() 
{
	int i;
	//unsigned short rrvalue;
	long value =0;
	long hvalue=0;
	long* px=&value;
	long* py=&hvalue;
	double (*pf)(double);
	pf=FunctionC;
	BPInter2D(0,pf,px,py,100,125,30,30);
}

double CTest880Dlg::Function(double x)
{
     double y;
	 y=6*x+2;
	 return y;
}

⌨️ 快捷键说明

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