public ConfigureAntenna(LakeChabotReader reader) { if (null == reader) { throw new ArgumentNullException("reader", "Null reader passed to ConfigureAntenna CTOR()"); } if (reader.Mode != rfidReader.OperationMode.BoundToReader) { throw new ArgumentOutOfRangeException("reader", "Unbound reader passed to ConfigureAntenna()"); } InitializeComponent( ); //applyAtStartupCheckBox.Checked = !String.IsNullOrEmpty( RFID_Explorer.Properties.Settings.Default.antennaSettings ); this.reader = reader; this.timer = new Timer( ); this.timer.Interval = 5000; this.timer.Tick += new EventHandler(timer_Tick); //clark not sure. Wait firmware support this function. #if (LBT) //RfPowerThreshold Clark 2011.2.10 Cpoied from R1000 Tracer UInt32 oem_Data = 0; reader.MacReadOemData ( (ushort)enumOEM_ADDR.ENUM_OEM_ADDR_RF_REVPWR_THRESHOLD, //0x000000AE, ref oem_Data ); numericUpDownRfPowerThreshold.Value = oem_Data; #endif }
private string ShowOemData ( UInt16 Offset ) { UInt32 OemData = 0; UInt32 [] pOemData = null; UInt32 uiLength = 0; rfid.Constants.Result result = rfid.Constants.Result.OK; if (rfid.Constants.Result.OK != reader.MacReadOemData(Offset, ref OemData)) { return(null); } uiLength = (0 == (OemData & 0xFF) / 4) ? 1 : (OemData & 0xFF) / 4; uiLength += (uint)((0 == (OemData & 0xFF) % 4) ? 0 : 1); pOemData = new UInt32[uiLength]; Array.Clear(pOemData, 0, pOemData.Length); pOemData[0] = OemData; //Offset++; //Point to data address for (int i = 1; i < uiLength; i++) { result = reader.MacReadOemData((UInt16)(Offset + i), ref pOemData[i]); if (rfid.Constants.Result.OK != result) { return(null); } } //return Source_OEMData.uint32ArrayToString(pOemData, 0); return(CGlobalFunc.uint32ArrayToString(pOemData, uiLength)); }
public ConfigureSettingsControl(LakeChabotReader reader) { if (reader == null) { throw new ArgumentNullException("reader", "Null reader passed to ConfigureGeneral CTOR()"); } if (reader.Mode != rfidReader.OperationMode.BoundToReader) { throw new ArgumentOutOfRangeException("reader", "Unbound reader passed to ConfigureGeneral()"); } InitializeComponent( ); this.reader = reader; _timer = new Timer( ); _timer.Interval = 5000; _timer.Tick += new EventHandler(timer_Tick); string startupPowerState = Properties.Settings.Default.startupPowerState; string startupOpMode = Properties.Settings.Default.startupOperationalMode; int startupAlgorithmNumber = Properties.Settings.Default.startupInventoryAlgorithm; rfid.Constants.Result result = rfid.Constants.Result.OK; //Interface radiobutton============================================================= UInt32 oemData = 0; rfid.Constants.Result status = reader.MacReadOemData((ushort)enumOEM_ADDR.HOST_IF_SEL, ref oemData); if (oemData == (uint)enumPORT.ENUM_PORT_USB) { rBtn_USB.Checked = true; rBtn_UART.Checked = false; } else { rBtn_USB.Checked = false; rBtn_UART.Checked = true; } // regionComboBox============================================================= ENUM_REGION_RESULT enumMatch = ENUM_REGION_RESULT.FAIL; this.macRegion = new Source_MacRegion(); result = macRegion.load(LakeChabotReader.MANAGED_ACCESS, this.reader.ReaderHandle); do { if (rfid.Constants.Result.OK != result) { enumMatch = ENUM_REGION_RESULT.FAIL; break; } UInt32 shift = 1; foreach (rfid.Constants.MacRegion item in Enum.GetValues(typeof(rfid.Constants.MacRegion))) { do { if ((this.macRegion.MacRegionSupport & shift) <= 0) { break; } //Add support region to regionComboBox. if (item == rfid.Constants.MacRegion.CUSTOMER)//Customer region uses string. { result = reader.API_MacGetCustomerRegion(ref strCustomerRegion); switch (result) { case rfid.Constants.Result.OK: regionComboBox.Items.Add(strCustomerRegion); if (item == this.macRegion.MacRegion) { enumMatch = ENUM_REGION_RESULT.CUSTOMER_OK; } break; case rfid.Constants.Result.NOT_SUPPORTED: //Only hide the option. if (item == this.macRegion.MacRegion) { enumMatch = ENUM_REGION_RESULT.CUSTOMER_NON_SUPPORTED; } break; case rfid.Constants.Result.FAILURE: default: enumMatch = ENUM_REGION_RESULT.CUSTOMER_FAIL; break; } } else { //Other region uses enum. regionComboBox.Items.Add(item); //Check match region between support and current region setting. if (item == this.macRegion.MacRegion) { enumMatch = ENUM_REGION_RESULT.OK; } } }while(false); shift <<= 0x01; } }while(false); switch (enumMatch) { case ENUM_REGION_RESULT.OK: regionComboBox.SelectedIndex = regionComboBox.Items.IndexOf(this.macRegion.MacRegion); break; case ENUM_REGION_RESULT.FAIL: RegionError("Read region unsuccessfully"); break; case ENUM_REGION_RESULT.CUSTOMER_OK: //Customer region uses string. regionComboBox.SelectedIndex = regionComboBox.Items.IndexOf(strCustomerRegion); break; case ENUM_REGION_RESULT.CUSTOMER_NON_SUPPORTED: RegionError("Not support customer region"); break; case ENUM_REGION_RESULT.CUSTOMER_FAIL: RegionError("Get customer region fail"); break; case ENUM_REGION_RESULT.NOT_MATCH: RegionError("Region deosn't match \"RegionSupport\"."); break; } // profileComboBox============================================================= this.profileList = new Source_LinkProfileList(LakeChabotReader.MANAGED_ACCESS, this.reader.ReaderHandle); this.profileList.load( ); int count = 0; foreach (Source_LinkProfile linkProfile in profileList) { profileComboBox.Items.Add(count + " : " + linkProfile.ToString( )); ++count; } profileComboBox.SelectedIndex = ( int )profileList.getActiveProfileIndex( ); this.profileComboBox.SelectedIndexChanged += new System.EventHandler(this.profileComboBox_SelectedIndexChanged); // Currently out of sync with 'new' model ~ no explicit read done // here or source provided ~ done via reader call... foreach (rfid.Constants.SingulationAlgorithm item in Enum.GetValues(typeof(rfid.Constants.SingulationAlgorithm))) { algorithmComboBox.Items.Add(item); } algorithmComboBox.Items.Remove(rfid.Constants.SingulationAlgorithm.UNKNOWN); // skipping err checking on these shortcut methods... Source_QueryParms queryParms = new Source_QueryParms( ); queryParms.load(LakeChabotReader.MANAGED_ACCESS, reader.ReaderHandle); algorithmComboBox.SelectedIndex = algorithmComboBox.Items.IndexOf ( queryParms.SingulationAlgorithm ); algorithmComboBox.SelectedIndexChanged += new System.EventHandler(this.algorithmComboBox_SelectedIndexChanged); }
public ConfigureSettingsControl(LakeChabotReader reader) { if (reader == null) { throw new ArgumentNullException("reader", "Null reader passed to ConfigureGeneral CTOR()"); } if (reader.Mode != rfidReader.OperationMode.BoundToReader) { throw new ArgumentOutOfRangeException("reader", "Unbound reader passed to ConfigureGeneral()"); } InitializeComponent( ); this.reader = reader; _timer = new Timer( ); _timer.Interval = 5000; _timer.Tick += new EventHandler(timer_Tick); string startupPowerState = Properties.Settings.Default.startupPowerState; string startupOpMode = Properties.Settings.Default.startupOperationalMode; int startupAlgorithmNumber = Properties.Settings.Default.startupInventoryAlgorithm; //Interface radiobutton============================================================= do { UInt32 uiModelNameMajor = 0; string strModule = string.Empty; rfid.Constants.Result result = rfid.Constants.Result.OK; //Get Model Name result = reader.MacReadOemData((ushort)((int)enumOEM_ADDR.MODEL_NAME_MAIN), ref uiModelNameMajor); if (rfid.Constants.Result.OK != result) { btn_Update.Enabled = false; break; } strModule = String.Format("RU-{0}{1}{2}", (char)((uiModelNameMajor >> 16) & 0xFF), (char)((uiModelNameMajor >> 8) & 0xFF), (char)(uiModelNameMajor & 0xFF)); if (strModule == "RU-824") { rBtn_USB.Checked = true; btn_Update.Enabled = false; rBtn_UART.Enabled = false; break; } if (uiModelNameMajor == 0x4D303258)//0x4D303258==M02X { rBtn_UART.Checked = true; btn_Update.Enabled = false; rBtn_USB.Enabled = false; break; } UInt32 oemData = 0; result = reader.MacReadOemData((ushort)enumOEM_ADDR.HOST_IF_SEL, ref oemData); if (rfid.Constants.Result.OK != result) { btn_Update.Enabled = false; break; } if (oemData == (uint)enumPORT.ENUM_PORT_USB) { rBtn_USB.Checked = true; rBtn_UART.Checked = false; } else { rBtn_USB.Checked = false; rBtn_UART.Checked = true; } }while(false); //regionComboBox============================================================= LoadRegion(); // profileComboBox============================================================= this.profileList = new Source_LinkProfileList(LakeChabotReader.MANAGED_ACCESS, this.reader.ReaderHandle); this.profileList.load( ); int count = 0; foreach (Source_LinkProfile linkProfile in profileList) { profileComboBox.Items.Add(count + " : " + linkProfile.ToString( )); ++count; } profileComboBox.SelectedIndex = ( int )profileList.getActiveProfileIndex( ); this.profileComboBox.SelectedIndexChanged += new System.EventHandler(this.profileComboBox_SelectedIndexChanged); // Currently out of sync with 'new' model ~ no explicit read done // here or source provided ~ done via reader call... foreach (rfid.Constants.SingulationAlgorithm item in Enum.GetValues(typeof(rfid.Constants.SingulationAlgorithm))) { algorithmComboBox.Items.Add(item); } algorithmComboBox.Items.Remove(rfid.Constants.SingulationAlgorithm.UNKNOWN); // skipping err checking on these shortcut methods... Source_QueryParms queryParms = new Source_QueryParms( ); queryParms.load(LakeChabotReader.MANAGED_ACCESS, reader.ReaderHandle); algorithmComboBox.SelectedIndex = algorithmComboBox.Items.IndexOf ( queryParms.SingulationAlgorithm ); algorithmComboBox.SelectedIndexChanged += new System.EventHandler(this.algorithmComboBox_SelectedIndexChanged); }