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

📄 dlgshx.cpp

📁 使用vc++技术实现光电机串口通信管理程序
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	else
	{
		iaSelect10[7]=false;	
	}
	if(m_bRound8)
	{
		straSelect.SetAt(8,"68");
		iaSelect10[8]=true;
	}
	else
	{
		iaSelect10[8]=false;	
	}
	if(m_bRound9)
	{
		straSelect.SetAt(9,"69");
		iaSelect10[9]=true;
	}
	else
	{
		iaSelect10[9]=false;	
	}
	if(m_bRound10)
	{
		straSelect.SetAt(10,"6A");
		iaSelect10[10]=true;
	}
	else
	{
		iaSelect10[10]=false;	
	}
	if(m_bRound11)
	{
		straSelect.SetAt(11,"6B");
		iaSelect10[11]=true;
	}
	else
	{
		iaSelect10[11]=false;	
	}
	if(m_bRound12)
	{
		straSelect.SetAt(12,"6C");
		iaSelect10[12]=true;
	}
	else
	{
		iaSelect10[12]=false;	
	}
	if(m_bRound13)
	{
		straSelect.SetAt(13,"6D");
		iaSelect10[13]=true;
	}
	else
	{
		iaSelect10[13]=false;	
	}
	if(m_bRound14)
	{
		straSelect.SetAt(14,"6E");
		iaSelect10[14]=true;
	}
	else
	{
		iaSelect10[14]=false;	
	}
	if(m_bRound15)
	{
		straSelect.SetAt(15,"6F");
		iaSelect10[15]=true;
	}
	else
	{
		iaSelect10[15]=false;	
	}
/*	if(m_bRound16)
	{
		straSelect.SetAt(16,"70");
	}
	*/
	iaSelect10[16]=FALSE;
	if(m_bRound17)
	{
		straSelect.SetAt(17,"71");
		iaSelect10[17]=true;
	}
	else
	{
		iaSelect10[17]=false;	
	}
	if(m_bRound18)
	{
		straSelect.SetAt(18,"72");
		iaSelect10[18]=true;
	}
	else
	{
		iaSelect10[18]=false;	
	}
	if(m_bRound19)
	{
		straSelect.SetAt(19,"73");
		iaSelect10[19]=true;
	}
	else
	{
		iaSelect10[19]=false;	
	}
	if(m_bRound20)
	{
		straSelect.SetAt(20,"74");
		iaSelect10[20]=true;
	}
	else
	{
		iaSelect10[20]=false;	
	}
	if(m_bRound21)
	{
		straSelect.SetAt(21,"75");
		iaSelect10[21]=true;
	}
	else
	{
		iaSelect10[21]=false;	
	}
	if(m_bRound22)
	{
		straSelect.SetAt(22,"76");
		iaSelect10[22]=true;
	}
	else
	{
		iaSelect10[22]=false;	
	}	
	if(m_bRound23)
	{
		straSelect.SetAt(23,"77");
		iaSelect10[23]=true;
	}
	else
	{
		iaSelect10[23]=false;	
	}
	if(m_bRound24)
	{
		straSelect.SetAt(24,"78");
		iaSelect10[24]=true;
	}
	else
	{
		iaSelect10[24]=false;	
	}
	if(m_bRound25)
	{
		straSelect.SetAt(25,"79");
		iaSelect10[25]=true;
	}
	else
	{
		iaSelect10[25]=false;	
	}	
	if(m_bRound26)
	{
		straSelect.SetAt(26,"7A");
		iaSelect10[26]=true;
	}
	else
	{
		iaSelect10[26]=false;	
	}
	if(m_bRound27)
	{
		straSelect.SetAt(27,"7B");
		iaSelect10[27]=true;
	}
	else
	{
		iaSelect10[27]=false;	
	}
	if(m_bRound28)
	{
		straSelect.SetAt(28,"7C");
		iaSelect10[28]=true;
	}
	else
	{
		iaSelect10[28]=false;	
	}
	if(m_bRound29)
	{
		straSelect.SetAt(29,"7D");
		iaSelect10[29]=true;
	}
	else
	{
		iaSelect10[29]=false;	
	}
	if(m_bRound30)
	{
		straSelect.SetAt(30,"7E");
		iaSelect10[30]=true;
	}
	else
	{
		iaSelect10[30]=false;	
	}
	if(m_bRound31)
	{
		straSelect.SetAt(31,"7F");
		iaSelect10[31]=true;
	}
	else
	{
		iaSelect10[31]=false;	
	}
	int iA=0;
	switch(TheE1SelIndex) 
	{
		
	case 0:
		strTheFirst="";
		
		for(iA=0;iA<32;iA++)
		{		
			strTheFirst=strTheFirst+straSelect.GetAt(iA)+" ";
			iaSource0[iA]=iaSelect10[iA];
		}
		
		break;
	case 1:
		strTheSecond="";
		
		for(iA=0;iA<32;iA++)
		{
			strTheSecond=strTheSecond+straSelect.GetAt(iA)+" ";
			iaSource1[iA]=iaSelect10[iA];
		}
		
		break;
	case 2:
		strTheThird="";
		
		for(iA=0;iA<32;iA++)
		{			
			strTheThird=strTheThird+straSelect.GetAt(iA)+" ";
			iaSource2[iA]=iaSelect10[iA];
		}		
	break;
	case 3:
		strTheForth="";
		
		for(iA=0;iA<32;iA++)
		{			
			strTheForth=strTheForth+straSelect.GetAt(iA)+" ";
			iaSource3[iA]=iaSelect10[iA];
			
		}
	break;
	}
}
void CDlgShx::Initstra()

{
	for(int iTemp=0;iTemp<32;iTemp++)
	{
		iaSource3[iTemp]=0;
	}
	straSelect.Add("A0");
	straSelect.Add("A1");
	straSelect.Add("A2");
	straSelect.Add("A3");
	straSelect.Add("A4");
	straSelect.Add("A5");
	straSelect.Add("A6");
	straSelect.Add("A7");
	straSelect.Add("A8");
	straSelect.Add("A9");
	straSelect.Add("AA");
	straSelect.Add("AB");
	straSelect.Add("AC");
	straSelect.Add("AD");
	straSelect.Add("AE");
	straSelect.Add("AF");
	straSelect.Add("B0");
	straSelect.Add("B1");
	straSelect.Add("B2");
	straSelect.Add("B3");
	straSelect.Add("B4");
	straSelect.Add("B5");
	straSelect.Add("B6");
	straSelect.Add("B7");
	straSelect.Add("B8");
	straSelect.Add("B9");
	straSelect.Add("BA");
	straSelect.Add("BB");
	straSelect.Add("BC");
	straSelect.Add("BD");
	straSelect.Add("BE");
	straSelect.Add("BF");

}
void CDlgShx::SetResult(bool bTemp[32])
{
//	m_brRound1=iaResult0[1];
//	m_brRound2=iaResult0[2];
	m_brRound0=false;
	m_brRound1=bTemp[1];
	m_brRound2=bTemp[2];
	m_brRound3=bTemp[3];
	m_brRound4=bTemp[4];
	m_brRound5=bTemp[5];
	m_brRound6=bTemp[6];
	m_brRound7=bTemp[7];
	m_brRound8=bTemp[8];
	m_brRound9=bTemp[9];
	m_brRound10=bTemp[10];
	m_brRound11=bTemp[11];
	m_brRound12=bTemp[12];
	m_brRound13=bTemp[13];
	m_brRound14=bTemp[14];
	m_brRound15=bTemp[15];
	m_brRound16=false;
	m_brRound17=bTemp[17];
	m_brRound18=bTemp[18];
	m_brRound19=bTemp[19];
	m_brRound20=bTemp[20];
	m_brRound21=bTemp[21];
	m_brRound22=bTemp[22];
	m_brRound23=bTemp[23];
	m_brRound24=bTemp[24];
	m_brRound25=bTemp[25];
	m_brRound26=bTemp[26];
	m_brRound27=bTemp[27];
	m_brRound28=bTemp[28];
	m_brRound29=bTemp[29];
	m_brRound30=bTemp[30];
	m_brRound31=bTemp[31];
}
void CDlgShx::SetSource(bool bTempS[32])
{
	m_bRound0=false;
	m_bRound1=bTempS[1];
	m_bRound2=bTempS[2];
	m_bRound3=bTempS[3];
	m_bRound4=bTempS[4];
	m_bRound5=bTempS[5];
	m_bRound6=bTempS[6];
	m_bRound7=bTempS[7];
	m_bRound8=bTempS[8];
	m_bRound9=bTempS[9];
	m_bRound10=bTempS[10];
	m_bRound11=bTempS[11];
	m_bRound12=bTempS[12];
	m_bRound13=bTempS[13];
	m_bRound14=bTempS[14];
	m_bRound15=bTempS[15];
	m_bRound16=false;
	m_bRound17=bTempS[17];
	m_bRound18=bTempS[18];
	m_bRound19=bTempS[19];
	m_bRound20=bTempS[20];
	m_bRound21=bTempS[21];
	m_bRound22=bTempS[22];
	m_bRound23=bTempS[23];
	m_bRound24=bTempS[24];
	m_bRound25=bTempS[25];
	m_bRound26=bTempS[26];
	m_bRound27=bTempS[27];
	m_bRound28=bTempS[28];
	m_bRound29=bTempS[29];
	m_bRound30=bTempS[30];
	m_bRound31=bTempS[31];
}
void CDlgShx::Empty()
{
	m_bRound0 = FALSE;
	m_bRound1 = FALSE;
	m_bRound10 = FALSE;
	m_bRound11 = FALSE;
	m_bRound12 = FALSE;
	m_bRound13 = FALSE;
	m_bRound14 = FALSE;
	m_bRound15 = FALSE;
	m_bRound16 = FALSE;
	m_bRound17 = FALSE;
	m_bRound18 = FALSE;
	m_bRound19 = FALSE;
	m_bRound2 = FALSE;
	m_bRound20 = FALSE;
	m_bRound21 = FALSE;
	m_bRound22 = FALSE;
	m_bRound23 = FALSE;
	m_bRound24 = FALSE;
	m_bRound25 = FALSE;
	m_bRound26 = FALSE;
	m_bRound27 = FALSE;
	m_bRound28 = FALSE;
	m_bRound29 = FALSE;
	m_bRound3 = FALSE;
	m_bRound30 = FALSE;
	m_bRound31 = FALSE;
	m_bRound4 = FALSE;
	m_bRound5 = FALSE;
	m_bRound6 = FALSE;
	m_bRound7 = FALSE;
	m_bRound8 = FALSE;
	m_bRound9 = FALSE;
	m_brRound0 = FALSE;
	m_brRound1 = FALSE;
	m_brRound2 = FALSE;
	m_brRound3 = FALSE;
	m_brRound4 = FALSE;
	m_brRound5 = FALSE;
	m_brRound6 = FALSE;
	m_brRound7 = FALSE;
	m_brRound8 = FALSE;
	m_brRound9 = FALSE;
	m_brRound10 = FALSE;
	m_brRound11 = FALSE;
	m_brRound12 = FALSE;
	m_brRound13 = FALSE;
	m_brRound14 = FALSE;
	m_brRound15 = FALSE;
	m_brRound16 = FALSE;
	m_brRound17 = FALSE;
	m_brRound18 = FALSE;
	m_brRound19 = FALSE;
	m_brRound20 = FALSE;
	m_brRound21 = FALSE;
	m_brRound22 = FALSE;
	m_brRound23 = FALSE;
	m_brRound24 = FALSE;
	m_brRound25 = FALSE;
	m_brRound26 = FALSE;
	m_brRound27 = FALSE;
	m_brRound28 = FALSE;
	m_brRound29 = FALSE;
	m_brRound30 = FALSE;
	m_brRound31 = FALSE;
}
int CDlgShx::Str2Hex(CString str, char* data)
{
	int t,t1;
	int rlen=0,len=str.GetLength();
	//data.SetSize(len/2);
	for(int i=0;i<len;)
	{
		char l,h=str[i];
		if(h==' ')
		{
			i++;
			continue;
		}
		i++;
		if(i>=len)
			break;
		l=str[i];
		t=HexChar(h);
		t1=HexChar(l);
		if((t==16)||(t1==16))
			break;
		else 
			t=t*16+t1;
		i++;
		data[rlen]=(char)t;
		rlen++;
	}
	return rlen;

}
char CDlgShx::HexChar(char c)
{
	if((c>='0')&&(c<='9'))
		return c-0x30;
	else if((c>='A')&&(c<='F'))
		return c-'A'+10;
	else if((c>='a')&&(c<='f'))
		return c-'a'+10;
	else 
		return 0x10;
}
LONG CDlgShx::OnCommunication(WPARAM ch,LPARAM port)
{
	if (port <= 0 || port > 4)
		return -1;
	CString str;

	str.Format("%02X ",ch);
	m_strRXData+=str;
	UpdateData(false);
	return 0;


}

void CDlgShx::OnButtonOpenport(UINT uiCom) 
{
	// TODO: Add your control notification handler code here
/*	////////////////////////读串口信息//////////////////////////////////////////////////
	CDlgAllStaSet dlgalstaset;
	CString strPath;
	char Get[255];
	dlgalstaset.GetModulePath(strPath,NULL);
	strPath+="config.ini";
	GetPrivateProfileString("General","COM","1",Get,255,strPath);
	UINT uiCom=(UINT)atoi(Get);
	//////////////////////////////////////////////////////////////////////////
	
		CString strStatus;*/
		if (m_Port.InitPort(this, uiCom, 2400,'o',8,1,EV_RXFLAG | EV_RXCHAR,2048))
		{
			m_Port.StartMonitoring();		
		}
		else
		{
			AfxMessageBox("没有发现此串口或被占用");
		}
}

void CDlgShx::OnBtnAsk() 
{
	// TODO: Add your control notification handler code here
	UpdateData(true);
	Empty();
	switch(TheE1SelIndex) {
	case 0:
		SetResult(iaResult0);
		SetSource(iaSource0);
		break;
	case 1:
		SetResult(iaResult1);
		SetSource(iaSource1);
		break;
	case 2:
		SetResult(iaResult2);
		SetSource(iaSource2);
		break;
	case 3:
		SetResult(iaResult3);
		SetSource(iaSource3);
		break;	
	}
	UpdateData(false);
}
void CDlgShx::GetLogPath()
{
	SYSTEMTIME   mySystemTime;
	GetLocalTime(&mySystemTime);
	CString   filetime;
	strCurTime.Format("%d:%d:%d",mySystemTime.wHour,mySystemTime.wMinute,mySystemTime.wSecond);
	//	filetime.Format ("%d-%d-%d     %s%d     %d:%d:%d",mySystemTime.wYear,mySystemTime.wMonth,mySystemTime.wDay,"星期",mySystemTime.wDayOfWeek,mySystemTime.wHour,mySystemTime.wMinute,mySystemTime.wSecond);
	filetime.Format("%d-%d-%d.ini",mySystemTime.wYear,mySystemTime.wMonth,mySystemTime.wDay);
	CDlgAllStaSet dlgalstaset;
	dlgalstaset.GetModulePath(strLogPath,NULL);
	strLogPath=strLogPath+"log\\"+filetime;
}

void CDlgShx::OnBtnSelectall() 
{
	// TODO: Add your control notification handler code here
	m_bRound1=true;
	m_bRound2=true;
	m_bRound3=true;
	m_bRound4=true;
	m_bRound5=true;
	m_bRound6=true;
	m_bRound7=true;
	m_bRound8=true;
	m_bRound9=true;
	m_bRound10=true;
	m_bRound11=true;
	m_bRound12=true;
	m_bRound13=true;
	m_bRound14=true;
	m_bRound15=true;
	//m_bRound16=true;
	m_bRound17=true;
	m_bRound18=true;
	m_bRound19=true;
	m_bRound20=true;
	m_bRound21=true;
	m_bRound22=true;
	m_bRound23=true;
	m_bRound24=true;
	m_bRound25=true;
	m_bRound26=true;
	m_bRound27=true;
	m_bRound28=true;
	m_bRound29=true;
	m_bRound30=true;
	m_bRound31=true;

	UpdateData(false);
}

void CDlgShx::OnBtnUnselect() 
{
	// TODO: Add your control notification handler code here
	m_bRound1=false;
	m_bRound2=false;
	m_bRound3=false;
	m_bRound4=false;
	m_bRound5=false;
	m_bRound6=false;
	m_bRound7=false;
	m_bRound8=false;
	m_bRound9=false;
	m_bRound10=false;
	m_bRound11=false;
	m_bRound12=false;
	m_bRound13=false;
	m_bRound14=false;
	m_bRound15=false;
	//m_bRound16=true;
	m_bRound17=false;
	m_bRound18=false;
	m_bRound19=false;
	m_bRound20=false;
	m_bRound21=false;
	m_bRound22=false;
	m_bRound23=false;
	m_bRound24=false;
	m_bRound25=false;
	m_bRound26=false;
	m_bRound27=false;
	m_bRound28=false;
	m_bRound29=false;
	m_bRound30=false;
	m_bRound31=false;

	UpdateData(false);
}

⌨️ 快捷键说明

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