From 57d055bb4da25ec420f1edd80d96e2f6a43ee4da Mon Sep 17 00:00:00 2001 From: TAO Cheng Date: Fri, 16 Jan 2015 10:45:20 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=8E=BB=E9=99=A4=E9=85=8D=E7=BD=AEso7=5Fc?= =?UTF-8?q?onfig=E7=9A=84=E5=8A=9F=E8=83=BD=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Interfac/Msi/Hsi/SevenOcean/SO7_Proto.cpp | 16 ++++++++++++---- .../Interfac/Msi/Hsi/SevenOcean/SO7_Proto.h | 2 +- .../MachineInterfaceDll.cpp | 2 +- .../Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc | 10 +++++----- .../UsbUtility/UsbUtil/SetSo7MotionConfig.cpp | 2 +- .../Tools/UsbUtility/UsbUtil/So7_Option.cpp | 6 ++++-- .../Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo | Bin 156160 -> 156160 bytes 7 files changed, 24 insertions(+), 14 deletions(-) diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.cpp b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.cpp index 3c57e0d..860c711 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.cpp @@ -2166,7 +2166,7 @@ SSI_STATUS_MOTION CSO7_Proto::Save_So7_Config() char *outBuff = NULL; CString csAppPath; GetAppPath(csAppPath); - CString cFileName=csAppPath+_T("\\so7_config.ini"); + CString cFileName=csAppPath+_T("\\UtilitySo7Config.ini"); _wfopen_s(&m_pOutFile, cFileName, _T("wt")); if (!m_pOutFile) { @@ -2400,7 +2400,7 @@ SSI_STATUS_MOTION CSO7_Proto::Save_So7_Config() return SSI_STATUS_MOTION_NORMAL; } //****************************************************************************** -SSI_STATUS_MOTION CSO7_Proto::Load_So7_Config() +SSI_STATUS_MOTION CSO7_Proto::Load_So7_Config(int _FileName) { FILE *hConfigFile = NULL; char szLine[MAX_BUFF_SIZE]; @@ -2409,7 +2409,15 @@ SSI_STATUS_MOTION CSO7_Proto::Load_So7_Config() char cTemp[30]={0}; CString csAppPath; GetAppPath(csAppPath); - CString csSO7ConfigFile =csAppPath+_T("\\so7_config.ini"); + CString csSO7ConfigFile(_T("")); + if (_FileName==1) + { + csSO7ConfigFile=csAppPath+_T("\\so7_config.ini"); + } + else + { + csSO7ConfigFile=csAppPath+_T("\\UtilitySo7Config.ini"); + } _wfopen_s(&hConfigFile,csSO7ConfigFile,_T("rt")); if(hConfigFile) { @@ -4485,7 +4493,7 @@ SSI_STATUS_MOTION CSO7_Proto::_calculate_straightline_motion(double dSpeedMM) { CString csAppPath; GetAppPath(csAppPath); - CString csSO7ConfigFile = csAppPath + _T("\\Utility_Config.ini"); + CString csSO7ConfigFile = csAppPath + _T("\\Utility_config.ini"); Load_SevenOcean_Inifile(csSO7ConfigFile); g_machine.s_machine_config.x_axis._speed_max[0]=static_cast(g_machine.s_machine_config.x_axis._speed_max[0]*dSpeedMM); diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.h b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.h index 287d040..00bea55 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/SO7_Proto.h @@ -453,7 +453,7 @@ public: SSI_STATUS_MOTION _process_replay_capture_commands(char *inBuff, FILE* pInFile); SSI_STATUS_MOTION Load_SevenOcean_Inifile(CString csSO7INIFile); SSI_STATUS_MOTION Save_SevenOcean_Inifile(CString csSO7INIFile); - SSI_STATUS_MOTION Load_So7_Config(); + SSI_STATUS_MOTION Load_So7_Config(int _FileName=0); SSI_STATUS_MOTION Save_So7_Config(); SSI_STATUS_MOTION GetAppPath(CString &Path); SSI_STATUS_MOTION ExtractAppPath(CString &Path); diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/MachineInterfaceDll/MachineInterfaceDll.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/MachineInterfaceDll/MachineInterfaceDll.cpp index baa96de..442a60c 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/MachineInterfaceDll/MachineInterfaceDll.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/MachineInterfaceDll/MachineInterfaceDll.cpp @@ -36,7 +36,7 @@ extern "C" EXP_IMP SSI_STATUS_MOTION Machine_Startup(bool bOfflineOnly,EHOME_MAC m_pSO7_Proto->_start_machine(); if (rStatus==SSI_STATUS_MOTION_NORMAL) { - rStatus=m_pSO7_Proto->Load_So7_Config(); + rStatus=m_pSO7_Proto->Load_So7_Config(1); rStatus=LoadMotionParameter(); if (rStatus==SSI_STATUS_MOTION_NORMAL) { diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc index 64c2f59..b33ed5b 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc @@ -16,7 +16,7 @@ #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// -// 中文(简体,中国) resources +// Chinese (Simplified, PRC) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS) LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED @@ -128,7 +128,7 @@ BEGIN CTEXT "Y",IDC_STATIC,84,291,8,8 CTEXT "Z",IDC_STATIC,143,291,8,8 GROUPBOX "速度档位",IDC_STATIC,160,183,53,81 - PUSHBUTTON "配置so7_config",IDC_BUTTON_SETUP_SO7CONFIG,28,94,63,25,BS_MULTILINE + PUSHBUTTON "配置INI文件",IDC_BUTTON_SETUP_SO7CONFIG,28,94,63,25,BS_MULTILINE LTEXT "1",IDC_STATIC_IO_ADDR1,403,28,8,8 LTEXT "2",IDC_STATIC_IO_ADDR2,403,44,8,8 LTEXT "3",IDC_STATIC_IO_ADDR3,403,60,8,8 @@ -1848,12 +1848,12 @@ BEGIN IDS_SO7_ABOUTBOX "&About Utility for SO7..." END -#endif // 中文(简体,中国) resources +#endif // Chinese (Simplified, PRC) resources ///////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// -// 英语(美国) resources +// English (United States) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US @@ -2812,7 +2812,7 @@ BEGIN END END -#endif // 英语(美国) resources +#endif // English (United States) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SetSo7MotionConfig.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SetSo7MotionConfig.cpp index 5ace553..2d178f5 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SetSo7MotionConfig.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SetSo7MotionConfig.cpp @@ -558,7 +558,7 @@ void CSetSo7MotionConfig::OnBnClickedButtonSo7MotionConfigOk() CString m_csMsg=_T(""); m_pSO7_Proto->Save_So7_Config(); m_pSO7_Proto->GetAppPath(m_csMsg); - m_csMsg=_T("配置文件保存在:")+m_csMsg+_T("\\so7_config.ini。"); + m_csMsg=_T("配置文件保存在:")+m_csMsg+_T("\\UtilitySo7Config.ini。"); OutputWithScroll(m_csMsg,m_edit_MsgOut); } void CSetSo7MotionConfig::OnBnClickedButtonSo7MotionConfigSetDefault() diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp index 9ab9c35..8f037e4 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp @@ -148,16 +148,18 @@ BOOL CSo7_Option::OnInitDialog() ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_TC4000))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_MV900))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_SO7_IP_CAMERA))->SetCheck(FALSE); - ((CButton *)GetDlgItem(IDC_RADIO_CONTROLLER))->SetCheck(FALSE); + ((CButton *)GetDlgItem(IDC_RADIO_CONTROLLER))->SetCheck(TRUE); ((CButton *)GetDlgItem(IDC_RADIO__SO7_RS232))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_KEYENCE_LASER))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_SO7_VERIFICATION_ALGORITHM))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_TEST_IMAGE_DLL))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_ART_PCI8622))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC))->SetCheck(FALSE); - ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC_SERVER))->SetCheck(TRUE); + ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC_SERVER))->SetCheck(FALSE); #ifdef _RELEASE_SO7_CONTROLER_ONLY + ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC))->EnableWindow(FALSE); + ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC_SERVER))->EnableWindow(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SDK3000))->EnableWindow(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SV2000E))->EnableWindow(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SV4000E))->EnableWindow(FALSE); diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo index 16e77c3bdfe663112e10ffdc82210fff89932ef5..19da8e0f3aca4192dd01b64cd569adbe90c5691d 100644 GIT binary patch delta 3185 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 Date: Tue, 20 Jan 2015 21:40:29 +0800 Subject: [PATCH 2/3] Add DM200 --- .../Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp | 63 +++++++++++++++++- .../Msi/Hsi/SevenOcean/So7_TCPIP_Server.h | 3 + .../Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc | 5 +- .../UsbUtility/UsbUtil/SO7_Send_Parameter.cpp | 7 +- .../Tools/UsbUtility/UsbUtil/So7_Option.cpp | 4 +- .../UsbUtil/So7_Util_PLC_TCPIP_SERVER.cpp | 63 ++++++++++++++++++ .../UsbUtil/So7_Util_PLC_TCPIP_SERVER.h | 2 + .../UsbUtil/Usb_Util.vcxproj.filters | 8 ++- .../Hsi/Tools/UsbUtility/UsbUtil/resource.h | 2 + .../Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo | Bin 156160 -> 156160 bytes 10 files changed, 148 insertions(+), 9 deletions(-) diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp index 3aad8dc..6c342c1 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp @@ -66,9 +66,12 @@ CSo7_TCPIP_Server::CSo7_TCPIP_Server() DM5000= (short *)malloc(sizeof(short)*MAX_DM_PAGE_NUMBER); DM8000= (short *)malloc(sizeof(short)*MAX_DM_PAGE_NUMBER); DM10000= (short *)malloc(sizeof(short)*MAX_DM_PAGE_NUMBER); + DM200= (short *)malloc(sizeof(short)*200); + memset(DM5000,0,sizeof(short)*MAX_DM_PAGE_NUMBER); memset(DM8000,0,sizeof(short)*MAX_DM_PAGE_NUMBER); memset(DM10000,0,sizeof(short)*MAX_DM_PAGE_NUMBER); + memset(DM200,0,sizeof(short)*200); m_TCPIPMsg.Init(); } @@ -88,6 +91,8 @@ CSo7_TCPIP_Server::~CSo7_TCPIP_Server() DM8000=NULL; free(DM10000); DM10000=NULL; + free(DM200); + DM200=NULL; } //================================================================ int CSo7_TCPIP_Server::Init_Winsock() @@ -307,6 +312,38 @@ BOOL CSo7_TCPIP_Server::Response_Handshake() SendBuffer(); return TRUE; } + +//================================================================ +BOOL CSo7_TCPIP_Server::Response_PLC_DM200_R(short _StartAddr,short _DataSize) +{ + if(m_ClientSocket[m_nActiveClient] == INVALID_SOCKET) + { + return FALSE; + } + m_ClearSendBuf(); + memcpy(m_TCPIPBuf[CH_SEND]._buffer,DRW_SData,sizeof(DRW_SData)); + short sData(0); + _StartAddr-=200; + if ((_StartAddr+_DataSize)>=MAX_DM_PAGE_NUMBER) + { + _DataSize=MAX_DM_PAGE_NUMBER-_StartAddr; + } + for (int i=0;i<_DataSize;i++) + { + sData=DM200[_StartAddr+i]; + m_TCPIPBuf[CH_SEND]._buffer[DRW_SDataIndexData+2*i]=(sData>>8) & 0x0ff; + m_TCPIPBuf[CH_SEND]._buffer[DRW_SDataIndexData+2*i+1]=sData & 0x0ff; + } + short sDataSize(0); + sDataSize=(DRW_SDataIndexData-DRW_SDataHeadDataSize+_DataSize*2); + m_TCPIPBuf[CH_SEND]._buffer[DRW_SDataIndexDataSize1]=static_cast((sDataSize>>8) & 0x0ff); + m_TCPIPBuf[CH_SEND]._buffer[DRW_SDataIndexDataSize2]=static_cast(sDataSize & 0x0ff); + m_TCPIPBuf[CH_SEND]._size=DRW_SDataIndexData+_DataSize*2; + + SendBuffer(); + + return TRUE; +} //================================================================ BOOL CSo7_TCPIP_Server::Response_PLC_DM5000_R(short _StartAddr,short _DataSize) { @@ -570,7 +607,12 @@ void CSo7_TCPIP_Server::m_ProcessSocketReadEvent(SOCKET s) m_TCPIPMsg._CmdType=0; m_TCPIPMsg._DataAddr=iAddr; m_TCPIPMsg._DataSize=iDataSize; - if (iAddr>=20000) + if (iAddr>=200) + { + Response_PLC_DM200_R(iAddr,iDataSize); + m_TCPIPMsg._MsgType=RESPONSE_READ_PLC_STATE; + } + else if (iAddr>=20000) { m_TCPIPMsg._MsgType=RESPONSE_READ_ERRCODE; } @@ -610,6 +652,25 @@ void CSo7_TCPIP_Server::m_ProcessSocketReadEvent(SOCKET s) m_TCPIPMsg._CmdType=1; m_TCPIPMsg._DataAddr=iAddr; m_TCPIPMsg._DataSize=iDataSize; + if (iAddr>=200) + { + int iBuffsize(0); + int iStartAddr(0); + iStartAddr=iAddr-200; + bData[0]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RSDataIndexBufSize1]; + bData[1]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RSDataIndexBufSize2]; + iBuffsize=(bData[0]<<8)+bData[1]; + iBuffsize-=DRW_RDataCCLen; + for (int i=0;i=8000) { int iBuffsize(0); diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.h b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.h index bc8a84f..2f3cf5c 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.h @@ -53,6 +53,7 @@ enum TCPIP_RESPONSE_RESULT RESPONSE_READ_SENSOR_STATE, RESPONSE_READ_CCD_DATA, RESPONSE_READ_ERRCODE, + RESPONSE_READ_PLC_STATUS, RESPONSE_RESULT }; @@ -121,12 +122,14 @@ public: short *DM5000; short *DM8000; short *DM10000; + short *DM200; BOOL StartServer(HWND _hWnd,short _nPort); BOOL StopServer(); BOOL _Send_Cmd_Write_State(); BOOL Response_Handshake(); + BOOL Response_PLC_DM200_R(short _StartAddr,short _DataSize);//PLC State BOOL Response_PLC_DM5000_R(short _StartAddr,short _DataSize);//PLC State BOOL Response_PLC_DM10000_R(short _StartAddr,short _DataSize);//CCD diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc index b33ed5b..67f2ab7 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Mv_Util.rc @@ -1096,8 +1096,9 @@ BEGIN 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,93,110,44,10 - CONTROL "DM 8000",IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM8000,"Button",BS_AUTORADIOBUTTON,156,110,44,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 END IDD_SO7_UTIL_CAMERA DIALOGEX 0, 0, 417, 271 diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SO7_Send_Parameter.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SO7_Send_Parameter.cpp index 60645dc..31a5e9c 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SO7_Send_Parameter.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/SO7_Send_Parameter.cpp @@ -222,7 +222,7 @@ BOOL CSO7_Send_Parameter::OnInitDialog() ((CStatic *)GetDlgItem(IDC_STATIC_SPEED_PARA2))->SetWindowTextW(_T("缓冲距离(0-255)")); ((CStatic *)GetDlgItem(IDC_STATIC_SPEED_PARA3))->SetWindowTextW(_T("最低速率(0-255)")); ((CStatic *)GetDlgItem(IDC_STATIC_SPEED_PARA4))->SetWindowTextW(_T("刷新周期(0-255)")); - ((CStatic *)GetDlgItem(IDC_STATIC_SPEED_PARA5))->SetWindowTextW(_T("最大速率(0.0-10.0)")); + ((CStatic *)GetDlgItem(IDC_STATIC_SPEED_PARA5))->SetWindowTextW(_T("最大速率(0.0-65.5)")); } else { @@ -238,7 +238,10 @@ BOOL CSO7_Send_Parameter::OnInitDialog() GetDlgItem(IDC_CHECK_SO7_CONTROL_MODE_Y)->EnableWindow(FALSE); GetDlgItem(IDC_CHECK_SO7_CONTROL_MODE_Z)->EnableWindow(FALSE); } - + else + { + UpdateControlMode(0); + } return TRUE; // return TRUE unless you set the focus to a control } //========================================================================================= diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp index 8f037e4..2d0deb1 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Option.cpp @@ -157,9 +157,9 @@ BOOL CSo7_Option::OnInitDialog() ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC))->SetCheck(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC_SERVER))->SetCheck(FALSE); -#ifdef _RELEASE_SO7_CONTROLER_ONLY +#ifdef _RELEASE_SO7_CONTROLER_ONLY/* ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC))->EnableWindow(FALSE); - ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC_SERVER))->EnableWindow(FALSE); + ((CButton *)GetDlgItem(IDC_RADIO_SO7_OMRON_PLC_SERVER))->EnableWindow(FALSE);*/ ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SDK3000))->EnableWindow(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SV2000E))->EnableWindow(FALSE); ((CButton *)GetDlgItem(IDC_RADIO_VIDEOCARD_SV4000E))->EnableWindow(FALSE); diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.cpp b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.cpp index 1a34d76..d5ce8df 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.cpp @@ -58,6 +58,7 @@ BEGIN_MESSAGE_MAP(CSo7_Util_PLC_TCPIP_SERVER, CDialog) ON_BN_CLICKED(IDC_RADIO_PLC_TCPIP_SERVER_ADDR_CCD_DM, &CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedRadioPlcTcpipServerAddrCcdDm) 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) END_MESSAGE_MAP() @@ -417,6 +418,19 @@ void CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedRadioPlcTcpipServerAddrDm8000() m_UpdateListControl(E_LISTCTRL_DATA2CONTROL); } //===================================================================== +void CSo7_Util_PLC_TCPIP_SERVER::OnBnClickedRadioPlcTcpipServerAddrDm200() +{ + m_UpdateListControl(E_LISTCTRL_CONTROL2DATA); + if (m_DMAddrList==DM_ADDR_DM5000) + { + m_UpdateControls(FALSE); + } + m_DMAddrList=DM_ADDR_DM200; + m_UpdateListControl(E_LISTCTRL_TITLE); + m_UpdateListControl(E_LISTCTRL_DATA2CONTROL); + +} +//===================================================================== void CSo7_Util_PLC_TCPIP_SERVER::m_UpdateListControl(int _type) { switch(_type) @@ -616,6 +630,31 @@ void CSo7_Util_PLC_TCPIP_SERVER::m_UpdateListControl(int _type) m_DataList.SetEditableItemRange(0,MAX_DM_PAGE_NUMBER-1,1,1); m_DataList.SetColorStyleItemRange(0,MAX_DM_PAGE_NUMBER-1,0,2); } + else if (m_DMAddrList==DM_ADDR_DM200) + { + LVCOLUMN vColumn; + vColumn.mask=LVCF_TEXT; + vColumn.pszText=_T("DM200地址"); + vColumn.cchTextMax=10; + m_DataList.SetColumn(0,&vColumn); + iStartRow=0; + iEndRow=MAX_DM_PAGE_NUMBER; + for (int i=iStartRow;iDM200[i]); + if(i==25) + str.Format(_T("0x%X"),g_pSo7_TCPIP_Server->DM200[i]); + m_DataList.SetItemText(i,1,str); + } + } else { ; @@ -748,6 +799,17 @@ void CSo7_Util_PLC_TCPIP_SERVER::m_UpdateListControl(int _type) g_pSo7_TCPIP_Server->DM8000[iRow]=static_cast(atoi(cTmp)); } } + else if (m_DMAddrList==DM_ADDR_DM200) + { + iStartRow=0; + iEndRow=200; + for (int iRow=iStartRow;iRowDM200[iRow]=static_cast(atoi(cTmp)); + } + } break; } default:break; @@ -922,3 +984,4 @@ CString CSo7_Util_PLC_TCPIP_SERVER::TCPIPMsg(s_tcpip_msg_data _MsgData) + diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.h b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.h index 541cfaf..5d5fe00 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/So7_Util_PLC_TCPIP_SERVER.h @@ -5,6 +5,7 @@ enum DM_ADDR_LIST DM_ADDR_CCD, DM_ADDR_DM5000, DM_ADDR_DM8000, + DM_ADDR_DM200, DM_ADDR_LIST }; // CSo7_Util_PLC_TCPIP_SERVER dialog @@ -52,4 +53,5 @@ public: afx_msg void OnBnClickedRadioPlcTcpipServerAddrCcdDm(); afx_msg void OnBnClickedRadioPlcTcpipServerAddrDm5000(); afx_msg void OnBnClickedRadioPlcTcpipServerAddrDm8000(); + afx_msg void OnBnClickedRadioPlcTcpipServerAddrDm200(); }; diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters index e07f6ce..9561a9b 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/Usb_Util.vcxproj.filters @@ -238,7 +238,9 @@ Sources Files - + + Sources Files + @@ -511,7 +513,9 @@ Header Files - + + Header Files + diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/resource.h b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/resource.h index 9b2e260..7ccfd11 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/resource.h +++ b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil/resource.h @@ -950,6 +950,8 @@ #define IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM8000 1806 #define IDC_EDIT_MOVETO_DEG 1807 #define IDC_RADIO_READ_LIMIT_SWITCH 1807 +#define IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM8001 1807 +#define IDC_RADIO_PLC_TCPIP_SERVER_ADDR_DM200 1807 #define IDC_BUTTON_TESA_STAR_SENDMSG 1808 #define IDC_EDIT_TESA_STAR_E_LOG 1809 #define IDC_BUTTON_TESA_STAR_CLEAR_LOG 1810 diff --git a/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo b/PcDmis/Base/Interfac/Msi/Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo index 19da8e0f3aca4192dd01b64cd569adbe90c5691d..826e49d8bb54ee536ea7b545010f4c4e5706bbbd 100644 GIT binary patch delta 3319 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 delta 3303 zcmbtW4Nz1^5}uxYyZaUvviypO{Aonc)yK-OMtv+RMnqUq&*bz@jbOy01j+h`8aMIp zOcaIj7}S&V2hn&@k!N`3lGF94PII}6ir$?uo`qH}dd9NEqA0Wyync&IJS%sVs?1iu z?fIsArl+U7XWZvZ?sKN5JOPX>PKXI?3K-CEW%wn~5kfqFS1N@GU?NYkSrFit;$blB z&`%Y*5n*|Tp@l1-dsf^sU9(J+ZT|06^| zafw~*6T`0e3H6dB2>2h!leU4G{k6|hmaWJ2A_`2zjI!?`J=-8cpzS%t2kHAGw~#IG zo2%(49et-7g-?8g%oSIl!R9zh$OA;R#^dT>kTNK~K9D)|l3^G^`}eRX(gYI(A|IrQ zc)jUL_IklT7Lj?HuLxn6N6ccg$BD{3+dqvxP8o?t{t<^ZAbIr+LAY2H@XG0s#0R|% zk!+0KPuSucX0B1Vhu>g#vk&s0kK7(4Z2ag27-bwy3P~~PWLe@V|5D`Ukhk!=Qt=<1 zN|`*Sf#&2U!%8KMopM}3j7>SfBH5y`fk%n{>qtXZiUHfu_HYNpkmnljFs zVb2*SWsXR8*peNqZnI-6_XkfYc1KG~EZ$(ySN~&E-vsu%mjAUy{W{zad%(OYIj^vc|w9M?3>~u%Us+C-S6@&52 zoL~1attCU?v)&m^Qwq{&IV;LsW$g5#B=}0RgU4P3!8pxTQtBw}vA}Dd7v>A9U?g1k zik&=%7EP;zApt$1OMZgG zdXDG$ujBvukU1;E!xJzPd`&_=9XpQy_t@MHuy@Ij53q*RdpYe_tysHUL)S}bZ>X9ixy1O%{RBc%%|Ll06V~A3{ zYO}xO_}No=ccm4$o|fntfXvHCjvo&#O+NHsuNM+M$C1}cs1m*Lo?r8hY@=2&^bSN? zmF0W3=%Acs{jLB;vyvTgSbG<+%e%B*!SH@sj~5(*u;#|I)T=cawHnytgA+xqbiRb- zEeVS213?e3vE@ge(guH4d2~IyTN#ZTob4k5hK5rb#(b_bRYi+Xu4utBct8 z8~Q8zn`Y?v>|9vSq*}95)3U?}Ei7xyK5zOf$Is;fgC&xZaqBG+evcmNEpbA!odcF?RgMp(TeBujmvl7m7waoh5X6ceb>{jZjP;Q-}$`@WkdM- z%`mX}FYyAu768$T{KYRJC_pS*5GxEUw?w{D*B#LHQ7*qV7{Zw6qFaYP)Lf(#U5bJs z<)i{{f(2-i&(jZ)(Te$m=P+#y@N&ZmF0U0=V=o-(S@mtbXo3Lj*8Bin@fPHuN<;#m z&8zwN2G5Fu6^i?+9}SxID1$E^HDq|?#$VmPI$;0O8QM<5`Yzp_6uCz3tTc9}7o*10 zr!&bEHuge)bem?>b#&Y7{LD8X^VX|S#N`4S&fD6+P;>2qunh%zDtjU3@FBvUT+0`# zeIRpv>C`R~Q!Ea8tzyZEAaVi&+GSIO z>&9{EK3M!Gktt**nM4+oBUtvw^5#~MYZrm6cy7qR+ShMVws}f*qHUG^Fkm%qzMcJ& z3ACFOqtF*+?VBiTUzEnBJ>bty9t&sgrYL2_pVtA)J#SXbH#>Cfl1FTQ@+uXy_-%GLw5iLd z!iN6rWR+db&4ZKB=z>6D(cP?L> zM0-Shgh@GR)(rm6EwHNAPcZ=)icTolFKDR@W^L#Rd5I_*{Es2agvpGXhzqY~{__ovetN&f-m C2pS3i From 6b05c51c1de8f204b4387b907b08804094c6e46f Mon Sep 17 00:00:00 2001 From: TAO Cheng Date: Wed, 21 Jan 2015 11:30:31 +0800 Subject: [PATCH 3/3] TCPIP SERVER Add DM200. --- .../Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp | 39 +++++++++--------- .../Hsi/Tools/UsbUtility/UsbUtil_VS2010.suo | Bin 156160 -> 156160 bytes 2 files changed, 20 insertions(+), 19 deletions(-) diff --git a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp index 6c342c1..2a6a3cb 100644 --- a/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp +++ b/PcDmis/Base/Interfac/Msi/Hsi/SevenOcean/So7_TCPIP_Server.cpp @@ -652,25 +652,6 @@ void CSo7_TCPIP_Server::m_ProcessSocketReadEvent(SOCKET s) m_TCPIPMsg._CmdType=1; m_TCPIPMsg._DataAddr=iAddr; m_TCPIPMsg._DataSize=iDataSize; - if (iAddr>=200) - { - int iBuffsize(0); - int iStartAddr(0); - iStartAddr=iAddr-200; - bData[0]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RSDataIndexBufSize1]; - bData[1]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RSDataIndexBufSize2]; - iBuffsize=(bData[0]<<8)+bData[1]; - iBuffsize-=DRW_RDataCCLen; - for (int i=0;i=8000) { int iBuffsize(0); @@ -695,6 +676,26 @@ void CSo7_TCPIP_Server::m_ProcessSocketReadEvent(SOCKET s) RESPONSE_PLC_DM_UNKNOWN(); m_TCPIPMsg._MsgType=RESPONSE_WRITE_PLC_STATE; } + else if (iAddr>=200) + { + int iBuffsize(0); + int iStartAddr(0); + iStartAddr=iAddr-200; + bData[0]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RSDataIndexBufSize1]; + bData[1]=m_TCPIPBuf[CH_RECV]._buffer[DRW_RSDataIndexBufSize2]; + iBuffsize=(bData[0]<<8)+bData[1]; + iBuffsize-=DRW_RDataCCLen; + for (int i=0;iI%JSYbEJw zHGNTpJ!S`OV-)K~E78?!nYL*nrc`Tx6h+%&ODr1W)+RN!*&nq@wR3@0&&}kX`ObG9 zGiPS}16KclHC&~D8>cHzSVptHU6(ggZ&j9nl{}DQCxq~eF382GxlXw+5v;NlzzTh< z<$IHvBpc?@8IX-0#inZsb)Y21JoIQ{oki)0O;K~~1h;}m|7odDGkCXUuEV&XAp<|D&o^i(K2wZ#_e_V>bM%k4WrI>m%6>JtJbMt7xMf;X zb9wUyywp^vhudniuzoK)wQpha*z&ZaSCmJ4rX6nw^mqC2zjw3r!{HSs48Os8PE$;& zPvxr@!E*EjZF-<@^Q6Ez27Tx)J;bYrz^*AlUP8Gv1aJnx;dbxkDNmkQw?>+c zo*Cly65=%zGPy$j<$8D55Tbwe)BAu6&Bdq<*NmSFj77xgaGkQ};Y_Si1@#nmB7Eeq8kLaEU8v$24)1j!Z6jX%|-2zqk%V5BwxQtR`H-&2z&@Nad zMB;+2!1|WLLTZIBNeRYQB(yqc&l0Q^A`m#wLK-At%k_M&mQkx%yaROLqaCt}oshs= z2B2DO=zzU|2V5+0)h*neFcQbl?uC40Po;=u-Ea)>=Oz}~2Z~_(A!6l$UYJ5(@Q$&M zz=%n(UWk~uy%Lgn@(3gZhGm$rJj_ay+-6ZA;EG$Y5y?UOJ7zA^Iq1f=;3)XHBLa=q zjk0p%ZTdo4})HwB}>xPKU2{8Jmv#8R_G zl>ZH1gJ4maAn2eh^bceR=AaSa3sNcL+pj~RD0I@xCjMIqEfp`P)1$JXovbf|HiCVn ztkHN2jZrUku1%!{<}swJVMQpD+62p`5i_?vO_@-OXg~1mhFRi9--Z+!4{FkF}*=PQ`xE8b5{>A^XE>sfZhkQc|mqDOvGz zi^d37xl9))XsSk0^qD?gW`;tH*<$?Ml#HktH=LQyEsdL7;&vZU$^P3(PVV`gbMCq4 zp5J|Wksei~N7XqGLl&8cUr&m3{PcOuB!sXRRDd~-(=w%3vmuwn<>h#hjN{0>qyq2> z^-15zR4|r>vlA&oIJq3~j+Zc=Ql5kr2}r`}o1j*Bp1uvnOO=zER&nLrO0I4g)o^88 zkXtLXjcUiF8yiSiH(y$XxDG3o&sdfu6fVOgVN&)!4bG6@y~!|v=&@Q}$WRA)uAf7? z+h&l6!KDHXbEQj3(hY>TK~tbOw3p-L+;w_B4;7MoTb9tLt)M2Am0D6*pD*++i6U}x zi;&}X8XOj*v524Q_IP-c!(7BWtR6FOaeE8~m($`bakxoi;77q&RXlohh@CMc#;%Rb z7{|0ks$=>;bsC2ECKl58;ghrqlz@h=0JBF6k$O2~Rx<_?vUk`n8A#k_EwQg#gJ*Eg zyCWWdYO*k^VSm=CJ+4$0q_NGZOot{CK5`S|oDq0@JCL^49CBjQwC2xJi2kBc*x0#D z)_xk1rrpg#eXRBsh!IEe0a|(;w8H70d4P=#&JNP_hg;BJ6d_{;_a0Zsc&!^`Rn1Dr z$+ZK#V80|wQE@2@H;){5BU7e-_~MI`c=Ox44n4IlULMUqyp)Ci8J3?t9Cukcfb zSyW3>FBwQAKZ&+~2X>*W&kj0YS#@176!y72R{xN>AP@?ytPY>LGax&4zXU0z=2%mS z5k9!0rmi3uh1I`pL&SSNPteA1$=mmIAYFeD)MCph@Io{bCXqmGo~WG;x1ePv zWYdG6K$cis3<#65EV~$SLQfKw-p0#sgNA3rc9OQ?HBmkX?ki$t;6kdwF}EZxB8JOh z`*@vG&pV7R6K`^R^t{t%HuEmM*JafZ=8L%x;cJLKVm(is3m=QipFpFGMtUU{)QGY0 zJ6r&ro}a4sSa{o1x7lHEn`|XT&W6ip_ItWxadvR@PZ+E7l?Q_>R{1JcEtNW~3D^4; zgo5Fqzao~727os9126KU&JTw_o`(rpv>b})d&10A#wicpXpx(LY1Pxk{oOTr