private void chbFilter_CheckedChanged(object sender, EventArgs e) { try { RegisterDGVACC = _myDev; myFormStatus = FormViewACC; } catch (Exception exception) { MessageBox.Show("Error at filter condition setting!\n" + exception.Message); } }
public int restore(XmlNode parentNode) { try { XMLReaderWriter writer = new XMLReaderWriter(); writer.RestoreRegister(parentNode, _myDev); writer.RestoreFifoWrite(parentNode, myFifoReadWrite, _myDev.Type); writer.RestoreFifoRead(parentNode, myFifoReadWrite, _myDev.Type); writer.RestoreBatch(parentNode, myBatchCommandList, 1, _myDev.Type); writer.RestoreBatch(parentNode, myBatchCommandList, 2, _myDev.Type); writer.RestoreBatch(parentNode, myBatchCommandList, 3, _myDev.Type); writer.RestoreBatch(parentNode, myBatchCommandList, 4, _myDev.Type); writer.RestoreFormView(parentNode, myFormStatus); RegisterDGVACC = _myDev; FifoViewACC = myFifoReadWrite; BatchViewACC = myBatchCommandList; FormViewACC = myFormStatus; return 0; } catch (Exception exception) { MessageBox.Show("Error at restoring Application status!\n" + exception.Message); return -1; } }
private void cbbMasterDB_SelectedIndexChanged(object sender, EventArgs e) { try { RegisterDGVACC = _myDev; if (dgvRegisterList.Rows.Count > 0) { dgvRegisterList.Rows[0].Selected = true; dgvRegisterList_SelectionChanged(null, null); } bool flag1 = _myDev.Notes == ""; myFifoReadWrite = new FifoReadWrite(_myDev.TxPufferSize, _myDev.RxPufferSize); FifoViewACC = myFifoReadWrite; myBatchCommandList = new BatchCommandList(); BatchViewACC = myBatchCommandList; myFormStatus = FormViewACC; } catch (Exception exception) { MessageBox.Show("Error at Database Selection!\n" + exception.Message); } }
public static byte[] getByteRepresentationByRegisterName(string name, bool isPeekPoke, DeviceRegisterSet deviceRegSet) { foreach (DeviceRegister register in deviceRegSet.Registers) { if (register.Name.ToUpper() == name.ToUpper()) { string s = register.Address.ToString("X2"); if (s.Length <= 2) { if (register.RegClass.IsAConfig && isPeekPoke) { return new byte[] { 240, byte.Parse(s, NumberStyles.HexNumber) }; } return new byte[] { byte.Parse(s, NumberStyles.HexNumber) }; } return new byte[] { byte.Parse(s.Substring(0, 2), NumberStyles.HexNumber), byte.Parse(s.Substring(2, 2), NumberStyles.HexNumber) }; } } return null; }
public static DeviceRegisterSet FromXml2DeviceRecordSet(string chipType, string chipRev, string descriptorResourceName, string descriptorResourcePath) { XmlNode node = null; XmlNode node2 = null; try { XmlDocument document = new XmlDocument(); string path = Path.Combine(Path.Combine(Application.CommonAppDataPath, "WDS_Resources"), descriptorResourceName); if (File.Exists(path)) { document.Load(path); } else { Assembly executingAssembly = Assembly.GetExecutingAssembly(); executingAssembly.GetManifestResourceNames(); Stream manifestResourceStream = executingAssembly.GetManifestResourceStream(descriptorResourcePath + "." + descriptorResourceName); document.Load(manifestResourceStream); } document.PreserveWhitespace = false; DeviceRegisterSet set = new DeviceRegisterSet(); foreach (XmlNode node3 in document.DocumentElement.SelectNodes("SPIDevice")) { if ((node3.Attributes.GetNamedItem("type").Value == chipType) && (node3.Attributes.GetNamedItem("revision").Value == chipRev)) { node = node3; set = new DeviceRegisterSet { ChipID = Convert.ToInt32(node3.Attributes.GetNamedItem("chipID").Value), Name = node3.Attributes.GetNamedItem("name").Value, Type = node3.Attributes.GetNamedItem("type").Value, Revision = node3.Attributes.GetNamedItem("revision").Value, ProjectID = node3.Attributes.GetNamedItem("projectID").Value, TxPufferSize = Convert.ToInt32(node3.SelectSingleNode("TxPufferSize").InnerText), RxPufferSize = Convert.ToInt32(node3.SelectSingleNode("RxPufferSize").InnerText), TxPufferAddress = (node3.SelectSingleNode("TxPufferAddress").InnerText != "") ? Convert.ToInt32(node3.SelectSingleNode("TxPufferAddress").InnerText, 0x10) : 0, RxPufferAddress = (node3.SelectSingleNode("RxPufferAddress").InnerText != "") ? Convert.ToInt32(node3.SelectSingleNode("RxPufferAddress").InnerText, 0x10) : 0, NffsControl = (node3.SelectSingleNode("nFFS_control").InnerText == "0") ? false : true }; foreach (XmlNode node4 in node3.SelectNodes("Register")) { node2 = node4; DeviceRegister item = new DeviceRegister { Address = Convert.ToInt32(node4.Attributes.GetNamedItem("address").Value, 0x10), Name = node4.Attributes.GetNamedItem("name").Value, Size = Convert.ToInt32(node4.Attributes.GetNamedItem("size").Value) }; string str = node4.Attributes.GetNamedItem("defaultVal").Value.Replace(" ", ""); item.DefaultValue = (str != "-") ? Convert.ToInt32(str, 0x10) : 0; item.CurrentValue = item.DeviceValue = item.DefaultValue; item.IsRead = Convert.ToBoolean(Convert.ToInt32(node4.Attributes.GetNamedItem("isRead").Value)); item.IsWrite = Convert.ToBoolean(Convert.ToInt32(node4.Attributes.GetNamedItem("isWrite").Value)); if (node4.Attributes.GetNamedItem("isMarked") != null) { item.IsMarked = Convert.ToBoolean(Convert.ToInt32(node4.Attributes.GetNamedItem("isMarked").Value)); } else { item.IsMarked = false; } DeviceRegisterClassification classification = new DeviceRegisterClassification { IsTest = Convert.ToBoolean(Convert.ToInt32(node4.SelectSingleNode("Classification").Attributes.GetNamedItem("isTestReg").Value)), IsRF = Convert.ToBoolean(Convert.ToInt32(node4.SelectSingleNode("Classification").Attributes.GetNamedItem("isRFReg").Value)), IsDigital = Convert.ToBoolean(Convert.ToInt32(node4.SelectSingleNode("Classification").Attributes.GetNamedItem("isDigitalReg").Value)), IsMisc = Convert.ToBoolean(Convert.ToInt32(node4.SelectSingleNode("Classification").Attributes.GetNamedItem("isMiscReg").Value)), IsStatus = Convert.ToBoolean(Convert.ToInt32(node4.SelectSingleNode("Classification").Attributes.GetNamedItem("isStatusReg").Value)) }; XmlNode namedItem = node4.SelectSingleNode("Classification").Attributes.GetNamedItem("isAconfig"); if (namedItem != null) { classification.IsAConfig = Convert.ToBoolean(Convert.ToInt32(namedItem.Value)); } item.RegClass = classification; foreach (XmlNode node6 in node4.SelectNodes("Bit")) { DeviceRegisterBit bit = new DeviceRegisterBit { BitIdx = Convert.ToInt32(node6.Attributes.GetNamedItem("index").Value), Name = node6.Attributes.GetNamedItem("name").Value }; item.Bits.Add(bit); } item.Description = node4.LastChild.InnerText; set.Registers.Add(item); } return set; } } return null; } catch (Exception exception) { MessageBox.Show("XML Reading error! \n The " + descriptorResourceName + " XML File is not supported!\n" + exception.Message + "\n\rDevice: " + ((node == null) ? "" : node.Attributes.GetNamedItem("type").Value) + " ChipID: " + ((node == null) ? "" : node.Attributes.GetNamedItem("chipID").Value) + " Register: " + ((node2 == null) ? "" : node2.Attributes.GetNamedItem("address").Value)); return null; } }
public int initialize() { _chipType = _baseChipType = _adtRec.DeviceInfo.EBID.ChipType; _chipRev = _adtRec.DeviceInfo.EBID.ChipRevision; determinateBaseChipType(); myFormStatus = new FormStatus(); myDevList = new List<DeviceRegisterSet>(); myDevIndexer = new DeviceIndexTable(); _myDev = SPI_tools.FromXml2DeviceRecordSet(_baseChipType, _chipRev, "SPI_tools_PRO.xml", "NewWDS.Applications.App_SPI_Tool_Pro"); return _ioph.initialize(); }
public void GridMainSave(string _appId, DeviceRegisterSet fullRegister) { string currentDirectory = Directory.GetCurrentDirectory(); try { XmlNode root = CommonOpenSave.PrepForSaveconfig(_appId, "RegisterSet_" + fullRegister.Type.Replace("/", "_"), "WDS3_" + fullRegister.Type.Replace("/", "_") + "_" + fullRegister.Revision); if (root != null) { this.StoreRegister(root, fullRegister); CommonOpenSave.Saveconfig(_appId); } } catch (Exception exception) { GlobalServices.ErrMsg(_appId, "Error at saving Device settings! \n" + exception.Message); GlobalServices.msgBox("Error at saving Device settings! \n" + exception.Message, "Error!"); Directory.SetCurrentDirectory(currentDirectory); } }
private void cbbMasterDB_SelectedIndexChanged(object sender, EventArgs e) { try { this.RegisterDGVACC = this._myDev; if (this.dgvRegisterList.Rows.Count > 0) { this.dgvRegisterList.Rows[0].Selected = true; this.dgvRegisterList_SelectionChanged(null, null); } this.myFifoReadWrite = new FifoReadWrite(this._myDev.TxPufferSize, this._myDev.RxPufferSize); this.FifoViewACC = this.myFifoReadWrite; this.myBatchCommandList = new BatchCommandList(); this.BatchViewACC = this.myBatchCommandList; this.myFormStatus = this.FormViewACC; if (!this._isDeviceBusy) { this.ButtonLock(false); } } catch (Exception exception) { MessageBox.Show("Error at Database Selection!\n" + exception.Message); } }
public int initialize() { this._chipType = this._adtRec.DeviceInfo.EBID.ChipType; this._chipRev = this._adtRec.DeviceInfo.EBID.ChipRevision; this.determinateBaseChipType(); this.myFormStatus = new FormStatus(); this.myDevIndexer = new DeviceIndexTable(); this._myDev = SPI_tools.FromXml2DeviceRecordSet(this._baseChipType, this._chipRev, "SPI_tools.xml", "NewWDS.Applications.App_SPI_Tool"); return this._ioph.initialize(); }
private void reloadRegisterGrid() { try { this.RegisterDGVACC = this._myDev; if (this.dgvRegisterList.Rows.Count > 0) { this.dgvRegisterList.Rows[0].Selected = true; this.dgvRegisterList_SelectionChanged(null, null); } bool flag1 = this._myDev.Notes == ""; this.myFifoReadWrite = new FifoReadWrite(this._myDev.TxPufferSize, this._myDev.RxPufferSize); this.myBatchCommandList = new BatchCommandList(); this.BatchViewACC = this.myBatchCommandList; this.myFormStatus = this.FormViewACC; } catch (Exception exception) { MessageBox.Show("Error at Database Selection!\n" + exception.Message); } }
private void searchTextChanged(object sender, EventArgs e) { if (this.tbcCommandTypeSelector.SelectedTab == this.tbpRegisterEditor) { for (int i = 0; i < this._myDev.Registers.Count; i++) { this._myDev.Registers[i].IsMarked = this._myDev.Registers[i].Name.ToLower().Contains(this.txbSearch.Text.ToLower()); } this.RegisterDGVACC = this._myDev; this.chbMarked.Checked = true; } else if (this.tbcCommandTypeSelector.SelectedTab == this.tbpApiCommandCall) { foreach (ChipCommand command in this._chipApiDescriptor.Commands) { command.IsMarked = command.Name.ToLower().Contains(this.txbSearch.Text.ToLower()); } this.reloadCommandGrid(); this.chbViewMarkedCommands.Checked = true; } else if (this.tbcCommandTypeSelector.SelectedTab == this.tbpApiPropertyCall) { foreach (ChipProperty property in this._chipApiDescriptor.Properties) { property.IsMarked = property.Name.ToLower().Contains(this.txbSearch.Text.ToLower()); } this.reloadPropertyGrid(); this.chbViewMarkedProperties.Checked = true; } }
public AppWin_SPITool_PRO2() { byte[][] bufferArray = new byte[4][]; byte[] buffer = new byte[3]; buffer[0] = 8; buffer[1] = 0x7f; bufferArray[0] = buffer; bufferArray[1] = new byte[] { 0x21, 100, 0xa2 }; byte[] buffer2 = new byte[3]; buffer2[0] = 0x20; buffer2[1] = 0x7f; bufferArray[2] = buffer2; byte[] buffer3 = new byte[3]; buffer3[0] = 8; buffer3[1] = 0x1f; bufferArray[3] = buffer3; this.PA_MODE_CMD = bufferArray; this._chipType = ""; this._chipRev = ""; this._myDev = new DeviceRegisterSet(); this._tele = new Telegram(100); this._series = new TelegramContainer(); this._appId = GlobalServices.uniqApplicationId(WDSApplicationType.SPITool_PRO2); this._formwidth = 0x3e9; this.vsb = new VScrollBar(); this._currentVoltage = 2.4; this._interpreter = "base-tcl8.5-thread-win32-ix86.exe"; this._execState = ExecutionStatus.Stopped; this.InitializeComponent(); this.spcMainContainer.IsSplitterFixed = true; if ((SystemInformation.PrimaryMonitorSize.Height - 120) < 720) { base.Height = SystemInformation.PrimaryMonitorSize.Height - 140; Point point = new Point(); this.vsb.Height = (base.ClientSize.Height - this.tsrMainToolStrip.Height) - this.spiStatusBar.Height; this.vsb.SmallChange = this.spcMainContainer.Height / 20; this.vsb.LargeChange = this.spcMainContainer.Height / 10; this.vsb.Minimum = 0; this.vsb.Maximum = (((this.spcMainContainer.Height - base.ClientSize.Height) + this.vsb.LargeChange) + this.spiStatusBar.Height) + this.tsrMainToolStrip.Height; this.vsb.ValueChanged += new EventHandler(this.vsb_ValueChanged); base.MouseWheel += new MouseEventHandler(this.mouseWheelRotated); base.Controls.Add(this.vsb); this._formwidth += this.vsb.Width; base.Width = this._formwidth; point.Y = this.tsrMainToolStrip.Height; point.X = (base.Width - this.vsb.Width) - 10; this.vsb.Location = point; this.vsb.Show(); this.vsb.BringToFront(); } if (!GlobalServices.isfeatureAllowed(GlobalServices.Features.NextGenerationPRO_EngExtra)) { this.tbcCommandTypeSelector.TabPages.Remove(this.tbpRegisterEditor); this.tbcCommandTypeSelector.TabPages.Remove(this.tbpTclScriptCall); this.tbcCommandTypeSelector.TabPages.Remove(this.tbpRamLoad); } this.statusBarPanel4.ShowText = false; this.statusBarPanel4.StartPoint = 0L; this.statusBarPanel4.StepSize = 1L; }
public void StoreRegister(XmlNode root, DeviceRegisterSet myDev) { XmlDocument ownerDocument = root.OwnerDocument; XmlElement newChild = ownerDocument.CreateElement("SPIDevice"); newChild.SetAttribute("chipID", myDev.ChipID.ToString()); newChild.SetAttribute("type", myDev.Type); newChild.SetAttribute("revision", myDev.Revision); newChild.SetAttribute("projectID", myDev.ProjectID); newChild.SetAttribute("name", myDev.Name); newChild.SetAttribute("note", myDev.Notes); XmlElement element2 = ownerDocument.CreateElement("TxPufferSize"); XmlElement element3 = ownerDocument.CreateElement("RxPufferSize"); XmlElement element4 = ownerDocument.CreateElement("TxPufferAddress"); XmlElement element5 = ownerDocument.CreateElement("RxPufferAddress"); XmlElement element6 = ownerDocument.CreateElement("nFFS_control"); root.AppendChild(newChild); newChild.AppendChild(element2); element2.InnerText = myDev.TxPufferSize.ToString(); newChild.AppendChild(element3); element3.InnerText = myDev.RxPufferSize.ToString(); newChild.AppendChild(element4); element4.InnerText = myDev.TxPufferAddress.ToString(); newChild.AppendChild(element5); element5.InnerText = myDev.RxPufferAddress.ToString(); newChild.AppendChild(element6); element6.InnerText = myDev.NffsControl ? "1" : "0"; for (int i = 0; i < myDev.Registers.Count; i++) { XmlElement element7 = ownerDocument.CreateElement("Register"); element7.SetAttribute("address", myDev.Registers[i].Address.ToString("X")); element7.SetAttribute("name", myDev.Registers[i].Name); element7.SetAttribute("size", myDev.Registers[i].Size.ToString()); element7.SetAttribute("defaultVal", SPI_tools.toTwoByteHex(myDev.Registers[i].DefaultValue)); element7.SetAttribute("currentVal", SPI_tools.toTwoByteHex(myDev.Registers[i].CurrentValue)); element7.SetAttribute("isRead", myDev.Registers[i].IsRead ? "1" : "0"); element7.SetAttribute("isWrite", myDev.Registers[i].IsWrite ? "1" : "0"); element7.SetAttribute("isMarked", myDev.Registers[i].IsMarked ? "1" : "0"); newChild.AppendChild(element7); XmlElement element8 = ownerDocument.CreateElement("Classification"); element8.SetAttribute("isTestReg", myDev.Registers[i].RegClass.IsTest ? "1" : "0"); element8.SetAttribute("isRFreg", myDev.Registers[i].RegClass.IsRF ? "1" : "0"); element8.SetAttribute("isDigitalReg", myDev.Registers[i].RegClass.IsDigital ? "1" : "0"); element8.SetAttribute("isMiscReg", myDev.Registers[i].RegClass.IsMisc ? "1" : "0"); element8.SetAttribute("isStatusReg", myDev.Registers[i].RegClass.IsStatus ? "1" : "0"); element8.SetAttribute("isAconfig", myDev.Registers[i].RegClass.IsAConfig ? "1" : "0"); element7.AppendChild(element8); XmlElement element10 = ownerDocument.CreateElement("Bit"); element10.SetAttribute("index", myDev.Registers[i].Bits[7].BitIdx.ToString()); element10.SetAttribute("name", myDev.Registers[i].Bits[7].Name); element7.AppendChild(element10); XmlElement element11 = ownerDocument.CreateElement("Bit"); element11.SetAttribute("index", myDev.Registers[i].Bits[6].BitIdx.ToString()); element11.SetAttribute("name", myDev.Registers[i].Bits[6].Name); element7.AppendChild(element11); XmlElement element12 = ownerDocument.CreateElement("Bit"); element12.SetAttribute("index", myDev.Registers[i].Bits[5].BitIdx.ToString()); element12.SetAttribute("name", myDev.Registers[i].Bits[5].Name); element7.AppendChild(element12); XmlElement element13 = ownerDocument.CreateElement("Bit"); element13.SetAttribute("index", myDev.Registers[i].Bits[4].BitIdx.ToString()); element13.SetAttribute("name", myDev.Registers[i].Bits[4].Name); element7.AppendChild(element13); XmlElement element14 = ownerDocument.CreateElement("Bit"); element14.SetAttribute("index", myDev.Registers[i].Bits[3].BitIdx.ToString()); element14.SetAttribute("name", myDev.Registers[i].Bits[3].Name); element7.AppendChild(element14); XmlElement element15 = ownerDocument.CreateElement("Bit"); element15.SetAttribute("index", myDev.Registers[i].Bits[2].BitIdx.ToString()); element15.SetAttribute("name", myDev.Registers[i].Bits[2].Name); element7.AppendChild(element15); XmlElement element16 = ownerDocument.CreateElement("Bit"); element16.SetAttribute("index", myDev.Registers[i].Bits[1].BitIdx.ToString()); element16.SetAttribute("name", myDev.Registers[i].Bits[1].Name); element7.AppendChild(element16); XmlElement element17 = ownerDocument.CreateElement("Bit"); element17.SetAttribute("index", myDev.Registers[i].Bits[0].BitIdx.ToString()); element17.SetAttribute("name", myDev.Registers[i].Bits[0].Name); element7.AppendChild(element17); XmlElement element9 = ownerDocument.CreateElement("Description"); element9.InnerText = myDev.Registers[i].Description; element7.AppendChild(element9); } }
public void RestoreRegister(XmlNode root, DeviceRegisterSet myDev) { XmlDocument ownerDocument = root.OwnerDocument; XmlNodeList list = root.SelectNodes("SPIDevice"); for (int i = 0; i < list.Count; i++) { if (list[i].Attributes.GetNamedItem("type").Value.ToString() == myDev.Type) { XmlNode node = list[i]; DeviceRegisterSet set = new DeviceRegisterSet { ChipID = Convert.ToInt32(node.Attributes.GetNamedItem("chipID").Value), Name = node.Attributes.GetNamedItem("name").Value, Type = node.Attributes.GetNamedItem("type").Value, Revision = node.Attributes.GetNamedItem("revision").Value, ProjectID = node.Attributes.GetNamedItem("projectID").Value }; if (node.Attributes.GetNamedItem("note") != null) { set.Notes = node.Attributes.GetNamedItem("note").Value; } set.TxPufferSize = Convert.ToInt32(node.SelectSingleNode("TxPufferSize").InnerText); set.RxPufferSize = Convert.ToInt32(node.SelectSingleNode("RxPufferSize").InnerText); set.TxPufferAddress = (node.SelectSingleNode("TxPufferAddress").InnerText != "") ? Convert.ToInt32(node.SelectSingleNode("TxPufferAddress").InnerText, 0x10) : 0; set.RxPufferAddress = (node.SelectSingleNode("RxPufferAddress").InnerText != "") ? Convert.ToInt32(node.SelectSingleNode("RxPufferAddress").InnerText, 0x10) : 0; set.NffsControl = node.SelectSingleNode("nFFS_control").InnerText != "0"; foreach (XmlNode node2 in node.SelectNodes("Register")) { DeviceRegister item = new DeviceRegister { Address = Convert.ToInt32(node2.Attributes.GetNamedItem("address").Value, 0x10), Name = node2.Attributes.GetNamedItem("name").Value, Size = Convert.ToInt32(node2.Attributes.GetNamedItem("size").Value), DefaultValue = (node2.Attributes.GetNamedItem("defaultVal").Value != "-") ? Convert.ToInt32(node2.Attributes.GetNamedItem("defaultVal").Value, 0x10) : -1 }; if ((node2.Attributes.GetNamedItem("currentVal") != null) && (node2.Attributes.GetNamedItem("currentVal").Value != "-")) { item.CurrentValue = Convert.ToInt32(node2.Attributes.GetNamedItem("currentVal").Value, 0x10); } else { item.CurrentValue = item.DefaultValue; } item.DeviceValue = item.DefaultValue; item.IsRead = Convert.ToBoolean(Convert.ToInt32(node2.Attributes.GetNamedItem("isRead").Value)); item.IsWrite = Convert.ToBoolean(Convert.ToInt32(node2.Attributes.GetNamedItem("isWrite").Value)); if (node2.Attributes.GetNamedItem("isMarked") != null) { item.IsMarked = Convert.ToBoolean(Convert.ToInt32(node2.Attributes.GetNamedItem("isMarked").Value)); } else { item.IsMarked = false; } DeviceRegisterClassification classification = new DeviceRegisterClassification { IsTest = Convert.ToBoolean(Convert.ToInt32(node2.SelectSingleNode("Classification").Attributes.GetNamedItem("isTestReg").Value)), IsRF = Convert.ToBoolean(Convert.ToInt32(node2.SelectSingleNode("Classification").Attributes.GetNamedItem("isRFreg").Value)), IsDigital = Convert.ToBoolean(Convert.ToInt32(node2.SelectSingleNode("Classification").Attributes.GetNamedItem("isDigitalReg").Value)), IsMisc = Convert.ToBoolean(Convert.ToInt32(node2.SelectSingleNode("Classification").Attributes.GetNamedItem("isMiscReg").Value)), IsStatus = Convert.ToBoolean(Convert.ToInt32(node2.SelectSingleNode("Classification").Attributes.GetNamedItem("isStatusReg").Value)) }; XmlNode namedItem = node2.SelectSingleNode("Classification").Attributes.GetNamedItem("isAconfig"); if (namedItem != null) { classification.IsAConfig = Convert.ToBoolean(Convert.ToInt32(namedItem.Value)); } item.RegClass = classification; foreach (XmlNode node4 in node2.SelectNodes("Bit")) { DeviceRegisterBit bit = new DeviceRegisterBit { BitIdx = Convert.ToInt32(node4.Attributes.GetNamedItem("index").Value), Name = node4.Attributes.GetNamedItem("name").Value }; item.Bits.Add(bit); } item.Description = node2.LastChild.InnerText; set.Registers.Add(item); } myDev = set; return; } } }
private void chbMarked_CheckedChanged(object sender, EventArgs e) { try { RegisterDGVACC = _myDev; myFormStatus = FormViewACC; } catch (Exception exception) { MessageBox.Show("Error at Marking register!\n" + exception.Message); } }
private void AppWin_Si4460_CP_Load(object sender, EventArgs e) { this._chipType = this._adtRec.DeviceInfo.EBID.ChipType; this._chipRev = this._adtRec.DeviceInfo.EBID.ChipRevision; this.Text = this._chipType + " " + this.Text; this._chipApiDescriptor = new ChipCommandAndPpropertyDescriptor(); this._chipApiDescriptor.createDescriptorFromXML(this._chipType, this._chipRev); this._registerDescriptor = SPI_tools.FromXml2DeviceRecordSet(this._chipType, this._chipRev, "SPI_tools_PRO2.xml", "NewWDS.Applications.App_SPI_Tool_Pro2"); this.modeSelectionChanged(this.rdbReady, null); this.initChipSpecificData(); this.initFifoControl(); this.initPer(); }
private void tsrMainToolStrip_OpenRequested(object sender, EventArgs e) { try { _myDev = new XMLReaderWriter().GridMainOpen(_appId, _myDev); RegisterDGVACC = _myDev; resetAppDataChanged(); } catch (Exception exception) { MessageBox.Show("Error at Opening Registers!\n" + exception.Message); } }
public static TelegramContainerItem[] createTelegramsFromBatchString(string commands, IIOPortHandler ioph, IAppMainWindow mainWin, bool ctsPoll, DeviceRegisterSet deviceRegSet, ChipCommandAndPpropertyDescriptor chipApiDescriptor, out string errorMessage) { errorMessage = "No Error"; string[] strArray = commands.Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); List<TelegramContainerItem> list = new List<TelegramContainerItem>(); bool flag = false; for (int i = 0; i < strArray.Length; i++) { Telegram telegram; LastReplyPrecondition invalid; byte[] buffer; byte[][] bufferArray4; byte[] buffer8; flag = false; if ((strArray[i].Trim().Length >= 2) && !strArray[i].Trim().StartsWith("#")) { if (strArray[i].Trim().ToUpper().StartsWith("DELAY")) { int num2; if (int.TryParse(strArray[i].Trim().ToUpper().Replace("DELAY", "").Trim(), out num2)) { list.Add(new TelegramContainerItem(num2)); } } else if (strArray[i].Trim().ToUpper().StartsWith("RESET")) { bufferArray4 = new byte[5][]; bufferArray4[0] = new byte[] { 0x12, 6, 1, 0 }; bufferArray4[1] = new byte[] { 0x13, 6, 1 }; buffer8 = new byte[3]; buffer8[0] = 0x13; buffer8[1] = 6; bufferArray4[2] = buffer8; byte[] buffer9 = new byte[4]; buffer9[0] = 0x12; buffer9[1] = 0x1b; bufferArray4[3] = buffer9; bufferArray4[4] = new byte[] { 20, 0x1b }; byte[][] bufferArray = bufferArray4; LastReplyPrecondition[] preconditionArray = new LastReplyPrecondition[] { LastReplyPrecondition.ACK, LastReplyPrecondition.ACK, LastReplyPrecondition.ACK, LastReplyPrecondition.ACK, LastReplyPrecondition.DataACK }; for (int j = 0; j < bufferArray.Length; j++) { telegram = new Telegram(bufferArray[j].Length) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.lastReplyPrecondition = preconditionArray[j]; telegram.replySize = 15; telegram.UserData = new object[] { false }; if (j == 0) { telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); } if (telegram.replySize == -1) { throw new Exception("Not supported command."); } telegram.data.copy(bufferArray[j]); telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } } else if (strArray[i].Trim().ToUpper().StartsWith("SHUTDOWN")) { byte[][] bufferArray2 = new byte[][] { new byte[] { 0x12, 6, 1, 0 }, new byte[] { 0x13, 6, 1 } }; LastReplyPrecondition[] preconditionArray2 = new LastReplyPrecondition[] { LastReplyPrecondition.ACK, LastReplyPrecondition.ACK }; for (int k = 0; k < bufferArray2.Length; k++) { telegram = new Telegram(bufferArray2[k].Length) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.lastReplyPrecondition = preconditionArray2[k]; telegram.replySize = 15; telegram.UserData = new object[] { false }; if (k == 0) { telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; } if (telegram.replySize == -1) { throw new Exception("Not supported command."); } telegram.data.copy(bufferArray2[k]); telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } } else { if (!strArray[i].Trim().ToUpper().StartsWith("DCP")) { goto Label_064D; } invalid = LastReplyPrecondition.Invalid; buffer = new byte[1]; if (strArray[i].Trim().Length <= 3) { goto Label_0523; } switch (strArray[i].Trim().ToUpper()[3]) { case 'A': invalid = LastReplyPrecondition.ACK; goto Label_04F9; case 'D': invalid = LastReplyPrecondition.DataACK; goto Label_04F9; case 'I': invalid = LastReplyPrecondition.Indication; goto Label_04F9; } } } continue; Label_04F9: buffer = WDSConverters.ToByteArray(strArray[i].Substring(4).Trim().Replace(" ", "").ToUpper()); Label_0523: telegram = new Telegram(buffer.Length); telegram.uniqId = GlobalServices.uniqTelegramId(); telegram.parentUniqId = -1; telegram.type = TelegramType.Command; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.lastReplyPrecondition = invalid; telegram.replySize = 15; telegram.UserData = new object[] { false }; telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); if (telegram.replySize == -1) { throw new Exception("Not supported command."); } telegram.data.copy(buffer); telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); continue; Label_064D: if (strArray[i].Trim().ToUpper().StartsWith("RAM")) { string str; if (!getDataFromFwLoadCommand(strArray[i].Trim(), out str)) { _log.Error("Cannot create RAM Load telegram from command string"); } else { string str2; StreamReader reader = File.OpenText(str); byte[] buf = new byte[0x800]; int index = 0; while (((str2 = reader.ReadLine()) != null) && (index < buf.Length)) { if (byte.TryParse(str2, NumberStyles.HexNumber, (IFormatProvider) null, out buf[index])) { index++; } } if (index == 0) { _log.Error("Could not read any RAM data from the RAM Load file"); } else { bufferArray4 = new byte[0x11][]; buffer8 = new byte[4]; buffer8[0] = 0x10; buffer8[3] = 1; bufferArray4[0] = buffer8; bufferArray4[1] = new byte[] { 0x10, 3, 0, 7, 80 }; bufferArray4[2] = new byte[] { 0x10, 4, 0, 7, 80, 0 }; bufferArray4[3] = new byte[] { 0x10, 4, 0, 7, 80, 0 }; bufferArray4[4] = new byte[] { 0x10, 3, 0, 7, 80 }; bufferArray4[5] = new byte[] { 0x10, 4, 0, 0x6d, 80, 1 }; bufferArray4[6] = new byte[] { 0x10, 4, 0, 1, 80, 0xff }; bufferArray4[7] = new byte[] { 0x10, 4, 0, 0xac, 80, 0x1f }; bufferArray4[8] = new byte[] { 0x10, 7, 0, 0x94, 0x54, 0x53 }; bufferArray4[9] = new byte[] { 0x10, 7, 0, 0x95, 0x54, 0x30 }; bufferArray4[10] = new byte[] { 0x10, 0x45, 0, 0x88 }; buffer8 = new byte[3]; buffer8[0] = 0x10; buffer8[1] = 0x85; bufferArray4[11] = buffer8; buffer8 = new byte[3]; buffer8[0] = 0x10; buffer8[1] = 0xc5; bufferArray4[12] = buffer8; bufferArray4[13] = new byte[] { 0x10, 3, 0, 7, 80 }; bufferArray4[14] = new byte[] { 0x10, 4, 0, 7, 80, 9 }; bufferArray4[15] = new byte[] { 0x10, 4, 0, 7, 80, 9 }; bufferArray4[0x10] = new byte[] { 0x10, 3, 0, 7, 80 }; byte[][] bufferArray3 = bufferArray4; int num6 = 0; for (int m = 0; m < bufferArray3.Length; m++) { telegram = new Telegram(bufferArray3[m].Length) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.lastReplyPrecondition = LastReplyPrecondition.Indication; telegram.replySize = 15; telegram.UserData = new object[] { false }; if (m == 0) { telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; } if (telegram.replySize == -1) { throw new Exception("Not supported command."); } telegram.data.copy(bufferArray3[m]); if ((m == 11) && (num6 < 0x10)) { telegram.data.appendFromStartIdx(buf, num6 * 0x79, 0x79); num6++; m--; } else if (m == 12) { telegram.data.appendFromStartIdx(buf, buf.Length - 0x70, 0x70); } else if (m == 11) { continue; } telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } } } } else if (strArray[i].Trim().ToUpper().StartsWith("PATCH")) { string str3; if (!getDataFromFwLoadCommand(strArray[i].Trim(), out str3)) { _log.Error("Cannot create PATCH Load telegram from command string"); } else { string str4; StreamReader reader2 = File.OpenText(str3); List<byte[]> list2 = new List<byte[]>(); while ((str4 = reader2.ReadLine()) != null) { byte[] item = new byte[8]; if (!str4.Trim().StartsWith("#")) { string[] strArray2 = str4.Split(new char[] { ',' }); for (int n = 0; (n < strArray2.Length) && (n < item.Length); n++) { string s = strArray2[n]; if (strArray2[n].StartsWith("0x")) { s = s.Substring(2); } if (!byte.TryParse(s, NumberStyles.HexNumber, (IFormatProvider) null, out item[n])) { _log.Error("Invalid data in PATCH Load file"); } } list2.Add(item); } } if (list2.Count == 0) { _log.Error("Could not read any PATCH data from the RAM Load file"); } else { buffer8 = new byte[3]; buffer8[0] = 0x10; byte[] buffer4 = buffer8; byte[] buffer5 = new byte[] { 0x10, 0, 0, 0x44, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; for (int num9 = 0; num9 < (list2.Count * 2); num9++) { telegram = new Telegram(10) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.lastReplyPrecondition = LastReplyPrecondition.Indication; telegram.replySize = 15; if (num9 == 0) { telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; } if (telegram.replySize == -1) { throw new Exception("Not supported command."); } if ((num9 % 2) == 0) { telegram.data.copy(buffer4); telegram.data.appendFromStartIdx(list2[num9 / 2], 0, list2[num9 / 2].Length); } else { telegram.data.copy(buffer5); } telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } } } } else if (strArray[i].Trim().ToUpper().StartsWith("TCL")) { int num10; string str6; if (!getDataFromTclCommand(strArray[i].Trim(), out num10, out str6)) { _log.Error("Cannot create TCL telegram from command string"); } else { telegram = new Telegram(str6.Length) { TimeOut = num10 * 0x3e8, uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.ExecuteTclScript }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.replySize = 15; telegram.UserData = new object[] { false }; telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); if (telegram.replySize == -1) { throw new Exception("Not supported command."); } telegram.data.copy(str6); telegram.userData = 3; telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } } else { int numberOfReplyData = 0; List<byte> list3 = new List<byte>(); string[] strArray3 = strArray[i].Trim().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); bool flag2 = false; bool isPeekPoke = false; byte num12 = 0; bool flag4 = false; bool flag5 = false; for (int num13 = 0; num13 < strArray3.Length; num13++) { if ((strArray3[num13].Trim().ToUpper() == "DW") || (strArray3[num13].Trim().ToUpper() == "DR")) { flag2 = true; isPeekPoke = false; flag4 = true; if (strArray3[num13].Trim() == "DW") { num12 = 4; } else { num12 = 3; flag5 = true; } } else { if ((strArray3[num13].Trim().ToUpper() == "'PEEK'") || (strArray3[num13].Trim().ToUpper() == "'POKE'")) { isPeekPoke = true; } byte[] array = null; if (strArray3[num13].Trim().StartsWith("'")) { if (!isPeekPoke || (num13 == 0)) { array = chipApiDescriptor.getByteRepresentationByAPIName(strArray3[num13].Trim(new char[] { '\'' })); } if (array == null) { array = SPI_tools.getByteRepresentationByRegisterName(strArray3[num13].Trim(new char[] { '\'' }), isPeekPoke, deviceRegSet); } if (array == null) { errorMessage = "Line number: " + i.ToString() + "\nInvalid command: " + strArray[i].Trim(); return null; } if ((num13 == 0) && (chipApiDescriptor.getCommandById(array[0]).NumberOfReplyData > 1)) { flag = true; numberOfReplyData = chipApiDescriptor.getCommandById(array[0]).NumberOfReplyData; } if (flag2) { Array.Reverse(array); flag2 = false; } if (((list3.Count == 1) && ((list3[0] == chipApiDescriptor.SetPropertyCommandId) || (list3[0] == chipApiDescriptor.GetPropertyCommandId))) && (array.Length == 2)) { List<byte> list4 = new List<byte>(array); list4.Insert(1, 1); array = list4.ToArray(); } if ((flag4 && (array.Length == 2)) && (array[1] == 0x54)) { num12 = (byte) (num12 + 3); } if ((isPeekPoke && (array.Length == 2)) && (array[0] == 0x54)) { array[0] = 0; } foreach (byte num14 in array) { list3.Add(num14); } } else { byte num15; if ((strArray3[num13].Trim().Length <= 2) && byte.TryParse(strArray3[num13].Trim(), NumberStyles.HexNumber, (IFormatProvider) null, out num15)) { if ((num13 == 0) && (chipApiDescriptor.getCommandById(num15).NumberOfReplyData > 1)) { flag = true; numberOfReplyData = chipApiDescriptor.getCommandById(num15).NumberOfReplyData; } list3.Add(num15); } else { errorMessage = "Line number: " + i.ToString() + "\nInvalid command: " + strArray[i].Trim(); return null; } } } } if (list3.Count != 0) { if (list3.Count == 1) { list3.Add(0); } telegram = new Telegram(list3.Count + 3) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command, lastReplyPrecondition = LastReplyPrecondition.Indication, }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } buffer8 = new byte[3]; buffer8[0] = 0x10; buffer8[1] = num12; telegram.data.copy(buffer8); telegram.data.append(list3.ToArray(), list3.Count); telegram.SenderInfo = new object[] { strArray[i].Trim(new char[] { '\r' }).Trim() }; telegram.UserDataExt.addUserData("CmdName", strArray[i].Trim(new char[] { '\r' }).Trim()); telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); if (flag) { telegram = new Telegram(13) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command, lastReplyPrecondition = LastReplyPrecondition.Indication }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } buffer8 = new byte[4]; buffer8[0] = 0x10; buffer8[3] = 0x44; telegram.data.copy(buffer8); byte[] buffer7 = new byte[numberOfReplyData]; for (int num16 = 0; num16 < buffer7.Length; num16++) { buffer7[num16] = 0xff; } telegram.data.append(buffer7, buffer7.Length); telegram.UserDataExt.addUserData("normalLogReply", true); telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } else if (((list[list.Count - 1].telegram.data.NumItems != 5) || (list[list.Count - 1].telegram.data.Buf[3] != 0x34)) && ctsPoll) { if (!flag4) { telegram = new Telegram(13) { uniqId = GlobalServices.uniqTelegramId(), parentUniqId = -1, type = TelegramType.Command, lastReplyPrecondition = LastReplyPrecondition.Indication }; if (ioph is IOPH_DCP) { telegram.protocol = Protocol.DCP; telegram.DCPCmdSet = 4; } else { telegram.protocol = Protocol.DCP2; telegram.DCPCmdSet = 0x1c; } telegram.data.copy(new byte[] { 0x10, 0, 0, 0x44, 0xff }); telegram.UserDataExt.addUserData("normalLogReply", true); telegram.portHandler = ioph; telegram.mainWin = mainWin; list.Add(new TelegramContainerItem(telegram)); } else if (flag5) { list[list.Count - 1].telegram.UserDataExt.addUserData("debugLogReply", true); } } } } } if (list.Count == 0) { errorMessage = "Did not recognized any executable commands!"; return null; } return list.ToArray(); }
public int oldTelegramFromPortHandler(Telegram telegram) { if (telegram.type == TelegramType.Command) { _closeCtrl.portHandlerClosed(telegram.portHandler); return 0; } if (telegram.type == TelegramType.DeviceFailure) { GlobalServices.ErrMsg(_appId, "telegramFromPortHandler(): DeviceFailure received"); _ioph.controlSeriesExecution(SeriesExecutionState.Stop); statusBarPanel4.Reset(); sbDeviceStatePane.Text = "Status: DeviceFailure"; return -1; } if (_isSeries) { string str = ""; if (_series.findTelegram(telegram.parentUniqId) != null) { str = _series.findTelegram(telegram.parentUniqId).data.objectInfo(false); } GlobalServices.LogMsg(_appId, str + telegram.data.objectInfo(false)); } else { GlobalServices.LogMsg(_appId, "|--->\n\tWindow->Device: " + _tele.data.objectInfo(false) + "\n\tWindow<-Device: " + telegram.data.objectInfo(false)); } switch (telegram.type) { case TelegramType.AcknowledgeOK: showLocalLog(telegram.data.objectInfo(false) + "\n"); break; case TelegramType.AcknowledgeERROR: showLocalLog(telegram.data.objectInfo(false) + "\n"); break; case TelegramType.DataAcknowledgeOK: showLocalLog(telegram.data.objectInfo(false) + "\n"); break; case TelegramType.DataAcknowledgeERROR: showLocalLog(telegram.data.objectInfo(false)); break; case TelegramType.SeriesEndOK: GlobalServices.LogMsg(_appId, "<--- Series finished"); break; case TelegramType.SeriesEndERROR: GlobalServices.LogMsg(_appId, "<--- Series finished with SeriesEndERROR"); break; case TelegramType.DeviceFailure: showLocalLog("DeviceFailure telegram type received: " + ((TelegramType) telegram.type).ToString()); break; default: showLocalLog("Unexpected telegram type received: " + ((TelegramType) telegram.type).ToString()); break; } if ((telegram.type != TelegramType.SeriesEndOK) && (telegram.type != TelegramType.SeriesEndERROR)) { ProcessReceivedTelegram(_tele, telegram); } else { base._isDeviceBusy = false; statusBarPanel4.Reset(); if (telegram.type != TelegramType.SeriesEndOK) { statusBarPanel4.Reset(); ButtonLock(false); sbDeviceStatePane.Text = "Status: SeriesEnd Error"; } else { ButtonLock(false); switch (_task_id) { case Task.SetVoltage: _task_id = Task.None; if (!_isReadCurrentOnChange) { tsrMainToolStrip.setCurrentText("? \x00b5A"); } break; case Task.Reset: if (!_isReadCurrentOnChange) { tsrMainToolStrip.setCurrentText("? \x00b5A"); } break; case Task.SingleRegisterIO: if (!_isReadCurrentOnChange) { tsrMainToolStrip.setCurrentText("? \x00b5A"); } break; case Task.MultipleRegisterIO: RegisterDGVACC = _myDev; if (!_isReadCurrentOnChange) { tsrMainToolStrip.setCurrentText("? \x00b5A"); } break; case Task.Batch1: case Task.Batch2: case Task.Batch3: case Task.Batch4: tsrMainToolStrip.setCurrentText("? \x00b5A"); break; case Task.FIFORead: { myFifoReadWrite.Packets++; bool flag = false; for (int i = 0; i < myFifoReadWrite.RxArray.Length; i++) { if (myFifoReadWrite.RxArray[i].H != "") { myFifoReadWrite.Databits += 8; if (myFifoReadWrite.RxArray[i].Xpd != "") { if (!flag && (myFifoReadWrite.RxArray[i].H != myFifoReadWrite.RxArray[i].Xpd)) { myFifoReadWrite.Lost++; flag = true; } int variable = Convert.ToInt32(myFifoReadWrite.RxArray[i].H, 0x10); int num3 = Convert.ToInt32(myFifoReadWrite.RxArray[i].Xpd, 0x10); for (int j = 0; j < 8; j++) { if (SPI_tools.isIndexedBitSet(variable, j) != SPI_tools.isIndexedBitSet(num3, j)) { myFifoReadWrite.BitError++; } } } } } myFifoReadWrite.Per = ((double) myFifoReadWrite.Lost) / ((double) myFifoReadWrite.Packets); myFifoReadWrite.Per = Math.Round(myFifoReadWrite.Per, 4); myFifoReadWrite.Ber = ((double) myFifoReadWrite.BitError) / ((double) myFifoReadWrite.Databits); myFifoReadWrite.Ber = Math.Round(myFifoReadWrite.Ber, 4); break; } } } } return 0; }
public DeviceRegisterSet GridMainOpen(string _appId, DeviceRegisterSet fullRegister) { string currentDirectory = Directory.GetCurrentDirectory(); try { if (CommonOpenSave.Openconfig("WDS3_" + fullRegister.Type.Replace("/", "_") + "_" + fullRegister.Revision) == 0) { XmlNode configNode = CommonOpenSave.ConfigNode; if (configNode == null) { throw new Exception("Incompatible Chip Configuration file, or incorrect WDS version / Chip Revision"); } this.RestoreRegister(configNode, fullRegister); } return fullRegister; } catch (Exception exception) { GlobalServices.ErrMsg(_appId, "Error at loading Device settings! \n" + exception.Message); GlobalServices.msgBox("Error at loading Device settings! \n" + exception.Message, "Error!"); Directory.SetCurrentDirectory(currentDirectory); } return fullRegister; }