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

📄 groupstation.cpp

📁 串口收发工具
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	}
	ni = m_NodeList3.GetSelCount();
    m_GroupStation.Node_Out[2]=0;
	m_NodeList3.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[2] |= DWtemp;
		}
	}

	ni = m_NodeList4.GetSelCount();
    m_GroupStation.Node_Out[3]=0;
	m_NodeList4.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[3] |= DWtemp;
		}
	}

	ni = m_NodeList5.GetSelCount();
    m_GroupStation.Node_Out[4]=0;
	m_NodeList5.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[4] |= DWtemp;
		}
	}

	ni = m_NodeList6.GetSelCount();
    m_GroupStation.Node_Out[5]=0;
	m_NodeList6.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[5] |= DWtemp;
		}
	}

	ni = m_NodeList7.GetSelCount();
    m_GroupStation.Node_Out[6]=0;
	m_NodeList7.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[6] |= DWtemp;
		}
	}

	ni = m_NodeList8.GetSelCount();
    m_GroupStation.Node_Out[7]=0;
	m_NodeList8.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[7] |= DWtemp;
		}
	}

	ni = m_NodeList9.GetSelCount();
    m_GroupStation.Node_Out[8]=0;
	m_NodeList9.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[8] |= DWtemp;
		}
	}

	ni = m_NodeList10.GetSelCount();
    m_GroupStation.Node_Out[9]=0;
	m_NodeList10.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[9] |= DWtemp;
		}
	}

	ni = m_NodeList11.GetSelCount();
    m_GroupStation.Node_Out[10]=0;
	m_NodeList11.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[10] |= DWtemp;
		}
	}

	ni = m_NodeList12.GetSelCount();
    m_GroupStation.Node_Out[11]=0;
	m_NodeList12.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[11] |= DWtemp;
		}
	}

	ni = m_NodeList13.GetSelCount();
    m_GroupStation.Node_Out[12]=0;
	m_NodeList13.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[12] |= DWtemp;
		}
	}

	ni = m_NodeList14.GetSelCount();
    m_GroupStation.Node_Out[13]=0;
	m_NodeList14.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[13] |= DWtemp;
		}
	}

	ni = m_NodeList15.GetSelCount();
    m_GroupStation.Node_Out[14]=0;
	m_NodeList15.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[14] |= DWtemp;
		}
	}

	ni = m_NodeList16.GetSelCount();
    m_GroupStation.Node_Out[15]=0;
	m_NodeList16.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[15] |= DWtemp;
		}
	}

	ni = m_NodeList17.GetSelCount();
    m_GroupStation.Node_Out[16]=0;
	m_NodeList17.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[16] |= DWtemp;
		}
	}

	ni = m_NodeList18.GetSelCount();
    m_GroupStation.Node_Out[17]=0;
	m_NodeList18.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[17] |= DWtemp;
		}
	}

	ni = m_NodeList19.GetSelCount();
    m_GroupStation.Node_Out[18]=0;
	m_NodeList19.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[18] |= DWtemp;
		}
	}

	ni = m_NodeList20.GetSelCount();
    m_GroupStation.Node_Out[19]=0;
	m_NodeList20.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[19] |= DWtemp;
		}
	}

	ni = m_NodeList21.GetSelCount();
    m_GroupStation.Node_Out[20]=0;
	m_NodeList21.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[20] |= DWtemp;
		}
	}

	ni = m_NodeList22.GetSelCount();
    m_GroupStation.Node_Out[21]=0;
	m_NodeList22.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[21] |= DWtemp;
		}
	}

	ni = m_NodeList23.GetSelCount();
    m_GroupStation.Node_Out[22]=0;
	m_NodeList23.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[22] |= DWtemp;
		}
	}

	ni = m_NodeList24.GetSelCount();
    m_GroupStation.Node_Out[23]=0;
	m_NodeList24.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[23] |= DWtemp;
		}
	}

	ni = m_NodeList25.GetSelCount();
    m_GroupStation.Node_Out[24]=0;
	m_NodeList25.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[24] |= DWtemp;
		}
	}

	ni = m_NodeList26.GetSelCount();
    m_GroupStation.Node_Out[25]=0;
	m_NodeList26.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[25] |= DWtemp;
		}
	}

	ni = m_NodeList27.GetSelCount();
    m_GroupStation.Node_Out[26]=0;
	m_NodeList27.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[26] |= DWtemp;
		}
	}

	ni = m_NodeList28.GetSelCount();
    m_GroupStation.Node_Out[27]=0;
	m_NodeList28.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[27] |= DWtemp;
		}
	}

	ni = m_NodeList29.GetSelCount();
    m_GroupStation.Node_Out[28]=0;
	m_NodeList29.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[28] |= DWtemp;
		}
	}

	ni = m_NodeList30.GetSelCount();
    m_GroupStation.Node_Out[29]=0;
	m_NodeList30.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[29] |= DWtemp;
		}
	}

	ni = m_NodeList31.GetSelCount();
    m_GroupStation.Node_Out[30]=0;
	m_NodeList31.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[30] |= DWtemp;
		}
	}

	ni = m_NodeList32.GetSelCount();
    m_GroupStation.Node_Out[31]=0;
	m_NodeList32.GetSelItems(ni,buf);
	for(i=0;i<ni;i++)
	{
		if(buf[i] >= 0)
		{
            DWtemp=(1 << buf[i]);
			m_GroupStation.Node_Out[31] |= DWtemp;
		}
	}
	for(ni=0;ni<32;ni++) 
	{
		DWtemp=	m_GroupStation.Alarm_Area[ni];
		for(i=0;i<32;i++)
		{
			if (((DWtemp&0x01)==1)&&(Alarm_Enable[i]==0))
			{
				MessageBox("防区设置中加入了未允许的报警输入号,建议重新配置参数!","建议",MB_ICONERROR);
				ni=32;
				break;
			}
			DWtemp>>=1;
		}
	}
	for(ni=0;ni<32;ni++) 
	{
		DWtemp=	m_GroupStation.Node_Out[ni];
		for(i=0;i<32;i++)
		{
			if (((DWtemp&0x01)==1)&&(Alarm_Enable[i]==0))
			{
				MessageBox("遥控输出设置中加入了未允许的报警输入号,建议重新配置参数!","建议",MB_ICONERROR);
				ni=32;
				break;
			}
			DWtemp>>=1;
		}
	}

/*	for(i=0;i<32;i++)
	{
		m_GroupStation.Alarm_Area[i] = Long_byte_trans(m_GroupStation.Alarm_Area[i]);
		m_GroupStation.Node_Out[i] = Long_byte_trans(m_GroupStation.Node_Out[i]);
	}*/

 	GetData(&m_GroupStation);	

	//CMainFrame* m_frame = (CMainFrame*)AfxGetMainWnd();
	//CMaintainView* m_view = ((CMaintainView*)m_frame->m_wndSplitter1.GetPane(0,0));
	//m_view->SetAlarmControler(m_GroupStation);
	((CMainFrame*)AfxGetMainWnd())->DownloadAlarmer(m_GroupStation);
	InformationDesplay(ALARMER_DOWNLOAD_FAIL);
}
void CGroupStation::GetData(LPGROUPSTATION lpGroupStation)
{
  	m_GroupStation.CrcCode = CRC16((char *)&m_GroupStation,sizeof(GROUPSTATION)-2);
	memcpy(lpGroupStation,&m_GroupStation,sizeof(GROUPSTATION));
}

void CGroupStation::OnAlarmupload() 
{
	((CMainFrame*)AfxGetMainWnd())->CallAlarmer(); 
	InformationDesplay(ALARMER_UPLOAD_FAIL);
}


void CGroupStation::OnChangeEDITYxNotA() 
{
	    int i,temp; 
		char charbuf[8];
		temp = m_YxNotA.GetLine(0,charbuf, 8);
		for (i = 0; i < temp; i++)
		{
			if ((charbuf[i] != 0x30)&&(charbuf[i] != 0x31))
			{
			 	MessageBox("请输入0或1!","输入错误",MB_ICONHAND);
				break;
			}
		}
}

void CGroupStation::OnChangeEDITYxNotB() 
{
	    int i,temp; 
		char charbuf[8];
		temp = m_YxNotB.GetLine(0,charbuf, 8);
		for (i = 0; i < temp; i++)
		{
			if ((charbuf[i] != 0x30)&&(charbuf[i] != 0x31))
			{
			 	MessageBox("请输入0或1!","输入错误",MB_ICONHAND);
				break;
			}
		}
	
}

void CGroupStation::OnChangeEDITYxNotC() 
{
	    int i,temp; 
		char charbuf[8];
		temp = m_YxNotC.GetLine(0,charbuf, 8);
		for (i = 0; i < temp; i++)
		{
			if ((charbuf[i] != 0x30)&&(charbuf[i] != 0x31))
			{
			 	MessageBox("请输入0或1!","输入错误",MB_ICONHAND);
				break;
			}
		}
	
}

void CGroupStation::OnChangeEDITYxNotD() 
{
	    int i,temp; 
		char charbuf[8];
		temp = m_YxNotD.GetLine(0,charbuf, 8);
		for (i = 0; i < temp; i++)
		{
			if ((charbuf[i] != 0x30)&&(charbuf[i] != 0x31))
			{
				MessageBox("请输入0或1!","输入错误",MB_ICONHAND);
				break;
			}
		}
	
}

void CGroupStation::OnLoadfile() 
{
	char szFilter[100] = "参数文件 (*.prm)|*.prm|rom文件 (*.rom)|*.rom|所有文件 (*.*)|*.*||";
	CMainFrame *pMainWnd = (CMainFrame *)AfxGetMainWnd();
	CFileDialog FileOpenDlg(TRUE,"*.prm","Group",OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilter);
	FileOpenDlg.m_ofn.lpstrTitle = "打开报警控制器参数文件";
	if(FileOpenDlg.DoModal() != IDOK) return;
	ZeroMemory(&m_GroupStation,sizeof(GROUPSTATION));
	DWORD dwRead = 0;
	HANDLE hFile = INVALID_HANDLE_VALUE;
	hFile = CreateFile(FileOpenDlg.GetFileName(),GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);

⌨️ 快捷键说明

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