TCPIP SERVER add DM200 controls.

This commit is contained in:
TAO Cheng
2015-01-22 19:58:53 +08:00
parent e4c49e39ac
commit f597f8c678
6 changed files with 100 additions and 22 deletions
@@ -690,7 +690,13 @@ void CSo7_TCPIP_Server::m_ProcessSocketReadEvent(SOCKET s)
bData[0]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RDataIndexData+i];
bData[1]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RDataIndexData+i+1];
DM200[iStartAddr++]=(bData[0]<<8)+bData[1];
TRACE2("DM%d=%d\r\n",iAddr+199,DM200[iStartAddr-1]);
TRACE2("DM%d=%d\r\n",iStartAddr-1,DM200[iStartAddr-1]);
}
BOOL bStatus(false);
bStatus=DM200[35]&0x0002;
if (bStatus)
{
DM200[25]=DM200[25]&0xFFFB;
}
m_TCPIPMsg._UpdateData=2;
RESPONSE_PLC_DM_UNKNOWN();
@@ -16,7 +16,7 @@
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// Chinese (Simplified, PRC) resources
// 中文(简体,中国) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
@@ -1067,16 +1067,16 @@ BEGIN
LTEXT "Server IP",IDC_STATIC,27,31,31,8
END
IDD_SO7_UTIL_PLC_TCPIP_SERVER DIALOGEX 0, 0, 558, 326
IDD_SO7_UTIL_PLC_TCPIP_SERVER DIALOGEX 0, 0, 580, 410
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "PLC TCP/IP SERVER"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
PUSHBUTTON "Exit",IDCANCEL,512,305,39,14
PUSHBUTTON "Exit",IDCANCEL,534,389,39,14
GROUPBOX "TCP/IP Server Control",IDC_STATIC,17,12,87,81
PUSHBUTTON "Start",IDC_BUTTON_PLC_TCPIP_SERVER_START,29,49,63,18
PUSHBUTTON "Stop",IDC_BUTTON_PLC_TCPIP_SERVER_STOP,29,73,63,18
EDITTEXT IDC_EDIT_MSG,342,14,201,273,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
EDITTEXT IDC_EDIT_MSG,342,14,201,369,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
PUSHBUTTON "Update",IDC_BUTTON_PLC_TCPIP_SERVER_UPDATESTATE,277,70,40,14
GROUPBOX "DM DATA",IDC_STATIC,110,12,214,81
EDITTEXT IDC_EDIT_PLC_TCPIP_SERVER_PLC_STATE,230,39,40,14,ES_AUTOHSCROLL
@@ -1089,16 +1089,23 @@ BEGIN
LTEXT "LASER2-1 STATE",IDC_STATIC,168,59,55,8
EDITTEXT IDC_EDIT_PLC_TCPIP_SERVER_STATE_CCD2,118,71,40,14,ES_AUTOHSCROLL
LTEXT "CCD1-2 STATE",IDC_STATIC,116,59,48,8
PUSHBUTTON "Clear",IDC_BUTTON_CLEAR_MSG,453,305,39,14
CONTROL "",IDC_LIST_PLC_TCPIP_SERVER_CCDDATA,"SysListView32",LVS_REPORT | WS_BORDER | WS_TABSTOP,24,125,294,166
GROUPBOX "地址表",IDC_STATIC,17,97,307,214
PUSHBUTTON "Update",IDC_BUTTON_PLC_TCPIP_SERVER_UPDATEDATA,277,294,40,14
PUSHBUTTON "Clear",IDC_BUTTON_CLEAR_MSG,453,389,39,14
CONTROL "",IDC_LIST_PLC_TCPIP_SERVER_CCDDATA,"SysListView32",LVS_REPORT | WS_BORDER | WS_TABSTOP,25,189,294,166
GROUPBOX "地址表",IDC_STATIC,18,164,307,214
PUSHBUTTON "Update",IDC_BUTTON_PLC_TCPIP_SERVER_UPDATEDATA,279,358,40,14
EDITTEXT IDC_EDIT_PLC_TCPIP_SERVER_PORTNUMBER,51,30,40,14,ES_AUTOHSCROLL
LTEXT "Port",IDC_STATIC,29,33,14,8
CONTROL "CCD1 DM",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_CCD_DM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,32,110,46,10
CONTROL "DM 5000",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM5000,"Button",BS_AUTORADIOBUTTON,96,110,44,10
CONTROL "DM 8000",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM8000,"Button",BS_AUTORADIOBUTTON,158,110,44,10
CONTROL "DM 200",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM200,"Button",BS_AUTORADIOBUTTON,220,110,40,10
CONTROL "CCD1 DM",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_CCD_DM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,33,174,46,10
CONTROL "DM 5000",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM5000,"Button",BS_AUTORADIOBUTTON,97,174,44,10
CONTROL "DM 8000",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM8000,"Button",BS_AUTORADIOBUTTON,159,174,44,10
CONTROL "DM 200",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM200,"Button",BS_AUTORADIOBUTTON,221,174,40,10
GROUPBOX "Static",IDC_STATIC,17,97,307,63
CONTROL "Trig Measure",IDC_CHECK_PLC_TCPIP_SERVER_MEASURE_TRIG,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,41,114,57,10
CONTROL "E_STOP",IDC_CHECK_PLC_TCPIP_SERVER_E__STOP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,41,138,41,10
CONTROL "Fix1",IDC_CHECK_PLC_TCPIP_SERVER_FIX1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,151,114,29,10
CONTROL "Fix2",IDC_CHECK_PLC_TCPIP_SERVER_FIX2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,151,138,29,10
PUSHBUTTON "Update",IDC_BUTTON_PLC_TCPIP_SERVER_UPDATESTATE_DM200,277,133,40,14
END
IDD_SO7_UTIL_CAMERA DIALOGEX 0, 0, 417, 271
@@ -1378,9 +1385,9 @@ BEGIN
IDD_SO7_UTIL_PLC_TCPIP_SERVER, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 551
RIGHTMARGIN, 573
TOPMARGIN, 6
BOTTOMMARGIN, 319
BOTTOMMARGIN, 403
END
IDD_SO7_UTIL_CAMERA, DIALOG
@@ -1852,12 +1859,12 @@ BEGIN
IDS_SO7_ABOUTBOX "&About Utility for SO7..."
END
#endif // Chinese (Simplified, PRC) resources
#endif // 中文(简体,中国) resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// English (United States) resources
// 英语(美国) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
@@ -2816,7 +2823,7 @@ BEGIN
END
END
#endif // English (United States) resources
#endif // 英语(美国) resources
/////////////////////////////////////////////////////////////////////////////
@@ -59,6 +59,7 @@ BEGIN_MESSAGE_MAP(CSo7_Util_PLC_TCPIP_SERVER, CDialog)
ON_BN_CLICKED(IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM5000, &CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedRadioPlcTcpipServerAddrDm5000)
ON_BN_CLICKED(IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM8000, &CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedRadioPlcTcpipServerAddrDm8000)
ON_BN_CLICKED(IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM200, &CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedRadioPlcTcpipServerAddrDm200)
ON_BN_CLICKED(IDC_BUTTON_PLC_TCPIP_SERVER_UPDATESTATE_DM200, &CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedButtonPlcTcpipServerUpdatestateDm200)
END_MESSAGE_MAP()
@@ -178,7 +179,8 @@ BOOL CSo7_Util_PLC_TCPIP_SERVER::OnInitDialog()
g_pSo7_TCPIP_Server->DM5000[index]=0;
index+=2;
index=25;
g_pSo7_TCPIP_Server->DM200[index]=3;
m_DMAddrList=DM_ADDR_CCD;
((CButton *)GetDlgItem(IDC_RADIO_PLC_TCPIP_SERVER_ADDR_CCD_DM))->SetCheck(TRUE);
@@ -237,11 +239,21 @@ void CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedButtonPlcTcpipServerUpdatestate()
void CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedButtonPlcTcpipServerUpdatedata()
{
m_UpdateListControl(E_LISTCTRL_CONTROL2DATA);
if (m_DMAddrList==DM_ADDR_DM5000)
if (m_DMAddrList==DM_ADDR_DM5000
||m_DMAddrList==DM_ADDR_DM200)
{
m_UpdateControls(FALSE);
}
}
//=====================================================================
void CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedButtonPlcTcpipServerUpdatestateDm200()
{
m_UpdateControls(TRUE);
m_UpdateListControl(E_LISTCTRL_TITLE);
m_UpdateListControl(E_LISTCTRL_DATA2CONTROL);
}
//=====================================================================
void CSo7_Util_PLC_TCPIP_SERVER::m_UpdateControls(int _type)
{
@@ -271,6 +283,17 @@ void CSo7_Util_PLC_TCPIP_SERVER::m_UpdateControls(int _type)
str.Format(_T("%d"),g_pSo7_TCPIP_Server->m_TCPIPServerState._PLCRunningState);
GetDlgItem(IDC_EDIT_PLC_TCPIP_SERVER_PLC_STATE)->SetWindowTextW(str);
short iDm225=g_pSo7_TCPIP_Server->DM200[25];
BOOL bStatus(FALSE);
bStatus=iDm225&0x0004;
((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_MEASURE_TRIG)))->SetCheck(bStatus);
bStatus=iDm225&0x0020;
((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_E__STOP)))->SetCheck(bStatus);
bStatus=iDm225&0x0008;
((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_FIX1)))->SetCheck(bStatus);
bStatus=iDm225&0x0010;
((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_FIX2)))->SetCheck(bStatus);
}
else
{
@@ -305,6 +328,40 @@ void CSo7_Util_PLC_TCPIP_SERVER::m_UpdateControls(int _type)
DM_Data[0]=0;
g_pSo7_TCPIP_Server->DM5000[i]=(DM_Data[0]<<8)+DM_Data[1];
}
short iDm225=g_pSo7_TCPIP_Server->DM200[25];
if (((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_MEASURE_TRIG)))->GetCheck())
{
iDm225=iDm225|0x0004;
}
else
{
iDm225=iDm225&0xFFFB;
}
if (((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_E__STOP)))->GetCheck())
{
iDm225=iDm225|0x0020;
}
else
{
iDm225=iDm225&0xFFDF;
}
if (((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_FIX1)))->GetCheck())
{
iDm225=iDm225|0x0008;
}
else
{
iDm225=iDm225&0xFFF7;
}
if (((CButton*)(GetDlgItem(IDC_CHECK_PLC_TCPIP_SERVER_FIX2)))->GetCheck())
{
iDm225=iDm225|0x0010;
}
else
{
iDm225=iDm225&0xFFEF;
}
g_pSo7_TCPIP_Server->DM200[25]=iDm225;
}
}
//=====================================================================
@@ -985,3 +1042,4 @@ CString CSo7_Util_PLC_TCPIP_SERVER::TCPIPMsg(s_tcpip_msg_data _MsgData)
@@ -54,4 +54,5 @@ public:
afx_msg void OnBnClickedRadioPlcTcpipServerAddrDm5000();
afx_msg void OnBnClickedRadioPlcTcpipServerAddrDm8000();
afx_msg void OnBnClickedRadioPlcTcpipServerAddrDm200();
afx_msg void OnBnClickedButtonPlcTcpipServerUpdatestateDm200();
};
@@ -501,6 +501,7 @@
#define IDC_CHECK_SO7_OUT_PORT 1394
#define IDC_CHECK_LKG5000_CONTINUE_READ2 1394
#define IDC_CHECK_SO7_CONTROL_MODE_X 1394
#define IDC_CHECK_PLC_TCPIP_SERVER_E__STOP 1394
#define IDC_BUTTON_MANUAL_HOME 1395
#define IDC_CHECK_TEST_KEYENCE_LK_G_PROGRAM2 1395
#define IDC_CHECK_ 1396
@@ -970,6 +971,7 @@
#define IDC_CHECK_SO7_MOTION_AUTO_SET_ZERO 1819
#define IDC_CHECK_SO7_TOP_LIGHT_ON 1819
#define IDC_CHECK_SO7_CONTROL_MODE_Y 1819
#define IDC_CHECK_PLC_TCPIP_SERVER_FIX1 1819
#define IDC_LIST_SO7_MOTION_CONFIG 1820
#define IDC_CHECK_SO7_BOTTOM_LIGHT_ON 1820
#define IDC_CHECK_SO7_TOP_LIGHT_ON2 1820
@@ -1096,6 +1098,7 @@
#define IDC_EDIT_PLC_TCPIP_SERVER_PORTNUMBER 1901
#define IDC_LIST_PLC_TCPIP_SERVER_CCDDATA 1902
#define IDC_IPADDRESS_PLC_TCPIP 1903
#define IDC_BUTTON_PLC_TCPIP_SERVER_UPDATESTATE_DM200 1903
#define IDC_RADIO_PLC_TCPIP_SERVER_ADDR_CCD_DM 1904
#define IDC_BUTTON_SO7_TEMPERATURE_SENSOR_START 1913
#define IDC_EDIT_SO7_TEMPERATURE_SENSOR_GRATINGRULER 1915
@@ -1139,7 +1142,10 @@
#define IDC_EDIT_SO7_UTIL_TEMPERATURE_DISPLAY_VALUE_B4 1955
#define IDC_EDIT5 1956
#define IDC_EDIT_SO7_UTIL_TEMPERATURE_DISPLAY_VALUE_C4 1956
#define IDC_EDIT_SO7_UTIL_TEMPERATURE_DISPLAY_VALUE_A4 1957
#define IDC_CHECK_PLC_TCPIP_SERVER_MEASURE_TRIG 1957
#define IDC_CHECK4 1958
#define IDC_CHECK_PLC_TCPIP_SERVER_FIX2 1958
#define IDC_EDIT_SO7_UTIL_TEMPERATURE_DISPLAY_VALUE_A4 1959
#define IDC_BUTTON_DIY_EXIT_BUTTON 32740
#define ID_EDIT_SO7_CONFIG_MOTION 32741
@@ -1149,7 +1155,7 @@
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 200
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 1958
#define _APS_NEXT_CONTROL_VALUE 1960
#define _APS_NEXT_SYMED_VALUE 104
#endif
#endif