private void button5_Click(object sender, EventArgs e) { using (FormColdChainFeatures form = new FormColdChainFeatures()) { form.tabControl1.SelectedIndex = 4; form.ShowDialog(); } }
private void button1_Click_1(object sender, EventArgs e) { if (Program.appSetting.tagGroup.selected != CSLibrary.Constants.Selected.ALL) { MessageBox.Show("Warning : MASK IS SET !!!"); } this.Hide(); using (FormColdChainFeatures Form = new FormColdChainFeatures()) { Form.ShowDialog(); } this.Show(); }
private void FormColdChainViewLog_Load(object sender, EventArgs e) { DateTime StartTime = DateTime.Now; UInt16 Interval = 0; double TempOffset = 0; UInt16 Total = 0; UInt16 ReadOffset = 0; UInt16 ReadRecord = 0; UInt16 ReadUInt16 = 0; listView5.Clear(); this.listView5.Columns.Add(this.columnHeader26); this.listView5.Columns.Add(this.columnHeader24); this.listView5.Columns.Add(this.columnHeader25); Program.ReaderXP.Options.TagSelected.flags = SelectMaskFlags.ENABLE_TOGGLE; Program.ReaderXP.Options.TagSelected.bank = MemoryBank.EPC; //Comment:If enable PC lock, please make sure you are not using Higgs3 Tag. Otherwise, write will fail Program.ReaderXP.Options.TagSelected.epcMask = new S_MASK(textBox14.Text); Program.ReaderXP.Options.TagSelected.epcMaskLength = (uint)Program.ReaderXP.Options.TagSelected.epcMask.Length * 8; if (Program.ReaderXP.StartOperation(Operation.TAG_SELECTED, true) != Result.OK) { return; } System.Threading.Thread.Sleep(100); Program.ReaderXP.Options.TagWriteUser.offset = 240; Program.ReaderXP.Options.TagWriteUser.count = 1; Program.ReaderXP.Options.TagWriteUser.pData = new UInt16[1]; Program.ReaderXP.Options.TagWriteUser.pData[0] = 0xa600; if (Program.ReaderXP.StartOperation(Operation.TAG_WRITE_USER, true) != Result.OK) { return; } Program.ReaderXP.Options.TagReadUser.retryCount = 7; Program.ReaderXP.Options.TagReadUser.offset = 264; Program.ReaderXP.Options.TagReadUser.count = 1; Program.ReaderXP.Options.TagReadUser.pData = new S_DATA(new UInt16[1]); if (Program.ReaderXP.StartOperation(Operation.TAG_READ_USER, true) != Result.OK) { return; } System.Threading.Thread.Sleep(100); Program.ReaderXP.Options.TagWriteUser.offset = 264; Program.ReaderXP.Options.TagWriteUser.count = 1; Program.ReaderXP.Options.TagWriteUser.pData = new UInt16[1]; Program.ReaderXP.Options.TagWriteUser.pData[0] = (UInt16)(Program.ReaderXP.Options.TagReadUser.pData.ToUshorts()[0] & 0xFFFEU); if (Program.ReaderXP.StartOperation(Operation.TAG_WRITE_USER, true) != Result.OK) { return; } Program.ReaderXP.Options.TagReadUser.accessPassword = 0; Program.ReaderXP.Options.TagReadUser.retryCount = 7; Program.ReaderXP.Options.TagReadUser.offset = 0; // Temp Sensor Calibration Word Program.ReaderXP.Options.TagReadUser.count = 5; Program.ReaderXP.Options.TagReadUser.pData = new S_DATA(new byte[5]); if (Program.ReaderXP.StartOperation(Operation.TAG_READ_USER, true) != Result.OK) { MessageBox.Show("Read Data Length Error"); return; } UInt16[] TagData = Program.ReaderXP.Options.TagReadUser.pData.ToUshorts(); StartTime = UnixTime(TagData[0] << 16 | TagData[1]); Interval = TagData[2]; TempOffset = 0.25 * (TagData[3]); Total = TagData[4]; label17.Text = "Total : " + Total.ToString(); if (Total >= 10752) { label17.Text += " (MemoryBank Full)"; } while (ReadOffset < Total) { Program.ReaderXP.Options.TagWriteUser.retryCount = 7; Program.ReaderXP.Options.TagWriteUser.accessPassword = 0x00000000; Program.ReaderXP.Options.TagWriteUser.offset = 260; Program.ReaderXP.Options.TagWriteUser.count = 2; Program.ReaderXP.Options.TagWriteUser.pData = new UInt16[2]; Program.ReaderXP.Options.TagWriteUser.pData[0] = 0x000a; Program.ReaderXP.Options.TagWriteUser.pData[1] = ReadOffset; if (Program.ReaderXP.StartOperation(Operation.TAG_WRITE_USER, true) != Result.OK) { return; } System.Threading.Thread.Sleep(2500); Program.ReaderXP.Options.TagReadUser.offset = 260; // Temp Sensor Calibration Word Program.ReaderXP.Options.TagReadUser.count = 1; // 183 * 2 records will be read Program.ReaderXP.Options.TagReadUser.pData = new S_DATA(new byte[1]); while (true) { if (Program.ReaderXP.StartOperation(Operation.TAG_READ_USER, true) != Result.OK) { MessageBox.Show("Read Data Length Error"); return; } if ((Program.ReaderXP.Options.TagReadUser.pData.ToUshorts()[0] & 0x04) != 0x0000) { break; } System.Threading.Thread.Sleep(100); } ReadRecord = (UInt16)(Total - ReadOffset); if (ReadRecord > 366) { ReadRecord = 366; } ReadUInt16 = (UInt16)((ReadRecord + 1) / 2); Program.ReaderXP.Options.TagReadUser.offset = 5; Program.ReaderXP.Options.TagReadUser.count = ReadUInt16; Program.ReaderXP.Options.TagReadUser.pData = new S_DATA(new byte[ReadUInt16]); ReadOffset += (UInt16)(ReadUInt16 * 2); if (Program.ReaderXP.StartOperation(Operation.TAG_READ_USER, true) != Result.OK) { MessageBox.Show("Read Data Length Error"); return; } UInt16[] DataPtr = Program.ReaderXP.Options.TagReadUser.pData.ToUshorts(); for (int cnt = 0; cnt < ReadUInt16; cnt++) { ListViewItem ins; double temp; temp = ((DataPtr[cnt] >> 8) * 0.25) - TempOffset; ins = new ListViewItem((listView5.Items.Count + 1).ToString()); ins.SubItems.Add(StartTime.ToString()); ins.SubItems.Add(temp.ToString()); listView5.Items.Add(ins); StartTime = StartTime.AddSeconds(Interval); if (listView5.Items.Count == Total) { break; } temp = ((DataPtr[cnt] & 0xff) * 0.25) - TempOffset; ins = new ListViewItem((listView5.Items.Count + 1).ToString()); ins.SubItems.Add(StartTime.ToString()); ins.SubItems.Add(temp.ToString()); listView5.Items.Add(ins); StartTime = StartTime.AddSeconds(Interval); } } FormColdChainFeatures.ColdChain_DataLog("[Read Temp Log]," + textBox14.Text + "," + "Current Time," + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); for (int cnt = 0; cnt < listView5.Items.Count; cnt++) { FormColdChainFeatures.ColdChain_DataLog(listView5.Items[cnt].SubItems[0].Text + "," + listView5.Items[cnt].SubItems[1].Text + "," + listView5.Items[cnt].SubItems[2].Text); } Program.ReaderXP.Options.TagWriteUser.offset = 240; Program.ReaderXP.Options.TagWriteUser.count = 1; Program.ReaderXP.Options.TagWriteUser.pData = new UInt16[1]; Program.ReaderXP.Options.TagWriteUser.pData[0] = 0x0000; if (Program.ReaderXP.StartOperation(Operation.TAG_WRITE_USER, true) != Result.OK) { return; } // Dummy read { S_DATA value = new S_DATA("0000"); //FormColdChainFeatures.ReadUserData(240, 1, ref value); Program.ReaderXP.Options.TagReadUser.offset = 240; Program.ReaderXP.Options.TagReadUser.count = 1; Program.ReaderXP.Options.TagReadUser.pData = new S_DATA(new byte[ReadUInt16]); Program.ReaderXP.StartOperation(Operation.TAG_READ_USER, true); } }