Exemple #1
0
        public void ParseRsp(ProtocolStruct Data)
        {
            switch (Data.Code)
            {
            case PassiveRcp.RCP_CMD_PARA:
                if (Data.Length > 0 && Data.Type == 0)
                {
                    PBasicParameters ppTemp = new PBasicParameters();
                    ppTemp.AddRange(Data.Payload);
                    ShowBasicParametersPnfo(ppTemp);
                    SystemPub.ADRcp.CommMode = ppTemp.WorkMode == 2 ? CommMode.ACTIVE : CommMode.PASSIVE;
                    if (IniSettings.Communication == CommType.USB)
                    {
                        PassiveCommand.GetOutCard(SystemPub.ADRcp);
                        //if (!SystemPub.ADRcp.SendBytePkt(PassiveRcp.GetOutCard(SystemPub.ADRcp.Address))) { }
                    }
                }
                else if (Data.Type == 0)
                {
                    SystemPub.ADRcp.CommMode = cmbWorkMode.SelectedIndex == 1 ? CommMode.ACTIVE : CommMode.PASSIVE;
                    if (IniSettings.Communication == CommType.USB || grbOutType.Visible)
                    {
                        PassiveCommand.SetOutCard(SystemPub.ADRcp, new byte[] { (byte)(cmbOutType.SelectedIndex + 1), (byte)((cmbOutLen.SelectedIndex * 2) + 6), (byte)(chkEnter.Checked ? 1 : 0) });
                        //if (!SystemPub.ADRcp.SendBytePkt(PassiveRcp.SetOutCard(SystemPub.ADRcp.Address, (byte)(cmbOutType.SelectedIndex + 1), (byte)((cmbOutLen.SelectedIndex*2) + 6), (byte)(chkEnter.Checked ? 1 : 0)))) { }
                    }
                }
                break;

            case PassiveRcp.RCP_CMD_OUTCARD:
                if (Data.Length > 0)
                {
                    cmbOutType.SelectedIndex = Data.Payload[0] - 1;
                    cmbOutLen.Text           = Data.Payload[1].ToString();
                    chkEnter.Checked         = Data.Payload[2] > 0 ? true : false;
                }
                break;
            }
        }