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 (UserSettings.Communication == UserSettings.CommType.USB) { 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 (UserSettings.Communication == UserSettings.CommType.USB || grbOutType.Visible) { 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; } }
private PBasicParameters GetBasicParametersPnfo() { PBasicParameters bpiTemp = new PBasicParameters(); bpiTemp.PowerSize = (byte)cmbPowerSize.SelectedIndex; bpiTemp.HoppingEnable = (byte)cmbFreqHopping.SelectedIndex; bpiTemp.FixedFreq = (byte)cmbFixedFreq.SelectedIndex; int intStep = (cmbHopping6.SelectedIndex - cmbHopping1.SelectedIndex) / 5; if (intStep < 1) { intStep = 1; } bpiTemp.Hopping1 = (byte)cmbHopping1.SelectedIndex; bpiTemp.Hopping2 = (byte)(cmbHopping1.SelectedIndex + intStep); bpiTemp.Hopping3 = (byte)(cmbHopping1.SelectedIndex + intStep * 2); bpiTemp.Hopping4 = (byte)(cmbHopping1.SelectedIndex + intStep * 3); bpiTemp.Hopping5 = (byte)(cmbHopping1.SelectedIndex + intStep * 4); bpiTemp.Hopping6 = (byte)cmbHopping6.SelectedIndex; bpiTemp.WorkMode = (byte)(cmbWorkMode.SelectedIndex + 1); bpiTemp.ReadInterval = (byte)nudReadInterval.Value; bpiTemp.Trigger = (byte)(cmbTrigger.SelectedIndex); //lstByte.Add( Convert.ToByte(5)); bpiTemp.OutputMode = (byte)(cmbOutputMode.SelectedIndex + 1); bpiTemp.ByteOffset = (byte)nudByteOffset.Value; bpiTemp.OutInterval = (byte)nudOutInterval.Value; bpiTemp.PulseWidth = (byte)nudPulseWidth.Value; bpiTemp.PulsePeriod = (byte)nudPulsePeriod.Value; int intAntenna = 0; if (chkAntenna1.Checked) { intAntenna = intAntenna | 1; } if (chkAntenna2.Checked) { intAntenna = intAntenna | 2; } if (chkAntenna3.Checked) { intAntenna = intAntenna | 4; } if (chkAntenna4.Checked) { intAntenna = intAntenna | 8; } bpiTemp.Antenna = (byte)intAntenna; switch (cmbCardType.SelectedIndex) { case 0: bpiTemp.CardType = 1; break; case 1: bpiTemp.CardType = 16; break; case 2: bpiTemp.CardType = 32; break; case 3: bpiTemp.CardType = 64; break; case 4: bpiTemp.CardType = 17; break; default: bpiTemp.CardType = 16; break; } bpiTemp.SameIDinterval = (byte)nudSameIDinterval.Value; bpiTemp.Buzzer = (byte)cmbBuzzer.SelectedIndex; bpiTemp.Area = (byte)(cmbArea.SelectedIndex + 2); bpiTemp.StartWord = (byte)cmbStartWord.SelectedIndex; bpiTemp.Length = (byte)(cmbLength.SelectedIndex + 1); bpiTemp.Encrypt = (byte)cmbEncrypt.SelectedIndex; bpiTemp.Password = Convert.ToInt32(utxtPassword.Text); bpiTemp.MaxTag = (byte)(cmbMaxTag.SelectedIndex + 10); return(bpiTemp); }
private bool ShowBasicParametersPnfo(PBasicParameters info) { try { cmbPowerSize.SelectedIndex = info.PowerSize; cmbFreqHopping.SelectedIndex = info.HoppingEnable; cmbFixedFreq.SelectedIndex = info.FixedFreq; cmbHopping1.SelectedIndex = info.Hopping1; cmbHopping6.SelectedIndex = info.Hopping6; cmbWorkMode.SelectedIndex = info.WorkMode - 1; nudReadInterval.Value = info.ReadInterval; cmbTrigger.SelectedIndex = info.Trigger; cmbOutputMode.SelectedIndex = info.OutputMode - 1; nudByteOffset.Value = info.ByteOffset; nudOutInterval.Value = info.OutInterval; nudPulseWidth.Value = info.PulseWidth; nudPulsePeriod.Value = info.PulsePeriod; int intAntenna = info.Antenna; chkAntenna1.Checked = Convert.ToBoolean(intAntenna & 1); chkAntenna2.Checked = Convert.ToBoolean(intAntenna & 2); chkAntenna3.Checked = Convert.ToBoolean(intAntenna & 4); chkAntenna4.Checked = Convert.ToBoolean(intAntenna & 8); switch (info.CardType) { case 1: cmbCardType.SelectedIndex = 0; break; case 16: cmbCardType.SelectedIndex = 1; break; case 32: cmbCardType.SelectedIndex = 2; break; case 64: cmbCardType.SelectedIndex = 3; break; case 17: cmbCardType.SelectedIndex = 4; break; default: MessageBox.Show("CardType Set Error!", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); break; } nudSameIDinterval.Value = info.SameIDinterval; cmbBuzzer.SelectedIndex = info.Buzzer; cmbArea.SelectedIndex = info.Area >= 2 ? (info.Area - 2) : 0; cmbStartWord.SelectedIndex = info.StartWord; cmbLength.SelectedIndex = info.Length - 1; cmbEncrypt.SelectedIndex = info.Encrypt; utxtPassword.Text = info.Password.ToString("0000"); cmbMaxTag.SelectedIndex = info.MaxTag - 10; return(true); } catch (Exception ex) { MessageBox.Show(ex.ToString(), this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); } return(false); }