Esempio n. 1
0
        private void ThreadReadInfo()
        {
            while (!m_bAlive && SystemPub.ADSio.bConnected)
            {
                System.Threading.Thread.Sleep(20);

                // Protocol Parameters
                if (!PassiveCommand.GetInformation(SystemPub.ADRcp))
                //if (!SystemPub.ADRcp.SendBytePkt(SystemPub.ADRcp.BuildCmdPacketByte(PassiveRcp.RCP_MSG_GET, PassiveRcp.RCP_CMD_INFO, null)))
                {
                    mReadInfoCount++;
                    if (mReadInfoCount > 3)
                    {
                        mReadInfoCount = 0;
                        if (m_bStopComm)
                        {
                            break;
                        }
                        SwitchPortAndBaud();
                    }
                    continue;
                }

                mReadInfoCount = 0;
                System.Threading.Thread.Sleep(100);

                // this.tsStatusInfo.Text = "  Ready..";
            }

            System.Console.WriteLine(" End ThreadReadInfo()");
        }
        public void ParseRsp(ProtocolStruct Data)
        {
            switch (Data.Code)
            {
            case PassiveRcp.RCP_CMD_TCPIP:
                if (Data.Length > 0 && Data.Type == 0)
                {
                    TcpipParameters bpiTemp = new TcpipParameters();
                    bpiTemp.AddRange(Data.Payload);
                    ShowTcpipParaInfo(bpiTemp);
                }
                else if (Data.Type == 0)
                {
                    string stren = "Set the IP parameters under the network connection need restart the equipment!";
                    string strcn = "设置IP参数需要重启设备!";
                    string aMsg  = IniSettings.GetLanguageString(stren, strcn);
                    MessageBox.Show(aMsg, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                break;

            case PassiveRcp.RCP_CMD_INFO:
                if (Data.Length > 0 && Data.Type == 0)
                {
                    string strInfo = Encoding.ASCII.GetString(Data.Payload, 0, Data.Length);

                    SystemPub.ADRcp.Mode    = strInfo.Substring(18, 1);
                    SystemPub.ADRcp.Version = strInfo.Substring(19, 5);
                    SystemPub.ADRcp.Address = Convert.ToInt32(strInfo.Substring(29, 5));

                    txtOldAddr.Text = SystemPub.ADRcp.Address.ToString();
                }
                else if (Data.Type == 0)
                {
                    PassiveCommand.GetInformation(SystemPub.ADRcp);
                    //if (!SystemPub.ADRcp.SendBytePkt(PassiveRcp.GetInformation())) { }
                }
                break;

            case PassiveRcp.RCP_CMD_SECRET:
                break;

            case PassiveRcp.RCP_CMD_SOFTRESET:
                break;

            case PassiveRcp.RCP_CMD_INITSYRIS:
                break;

            case PassiveRcp.RCP_CMD_REMOTE:
                break;

            case PassiveRcp.RCP_CMD_TIME:
                if (Data.Length > 0 && Data.Type == 0)
                {
                    string y  = Data.Payload[0].ToString("00");
                    string m  = Data.Payload[1].ToString("00");
                    string d  = Data.Payload[2].ToString("00");
                    string w  = Data.Payload[3].ToString("00");
                    string h  = Data.Payload[4].ToString("00");
                    string mi = Data.Payload[5].ToString("00");
                    string se = Data.Payload[6].ToString("00");
                    string D  = string.Format("20{0}-{1}-{2} {3}:{4}:{5}", y, m, d, h, mi, se);         //2010-02-28 14:48:03
                    txtReaderTime.Text = DateTime.Parse(D).ToString();
                }
                break;
            }
        }
Esempio n. 3
0
 private void tsmiInfo_Click(object sender, EventArgs e)
 {
     PassiveCommand.GetInformation(SystemPub.ADRcp);
 }