public void DataSampleDataFrameTest() { bool result = false; try { var data = Data(); DataSampleDataFrame sample = new DataSampleDataFrame(Data()); result = true; } catch (InvalidDataFrameException) { } Assert.AreEqual(true, result); }
private DataFrame ReturnFrame(Type FrameType, byte[] buffer) { if (FrameType == typeof(DataFrames.DSO068.CurrConfigDataFrame)) { DataFrames.DSO068.CurrConfigDataFrame CurrConfig = new DataFrames.DSO068.CurrConfigDataFrame(buffer); return(CurrConfig); } else if (FrameType == typeof(DataFrames.DSO112.CurrConfigDataFrame)) { DataFrames.DSO112.CurrConfigDataFrame CurrParam = new DataFrames.DSO112.CurrConfigDataFrame(buffer); return(CurrParam); } else if (FrameType == typeof(CurrParamDataFrame)) { CurrParamDataFrame CurrParam = new CurrParamDataFrame(buffer); return(CurrParam); } else if (FrameType == typeof(DataBlockDataFrame)) { DataBlockDataFrame CurrData = new DataBlockDataFrame(buffer); return(CurrData); } else if (FrameType == typeof(DataSampleDataFrame)) { DataSampleDataFrame CurrData = new DataSampleDataFrame(buffer); return(CurrData); } else if (FrameType == typeof(DataFrames.ScopeControlDataFrames.ScopeReady)) { DataFrames.ScopeControlDataFrames.ScopeReady ready = new DataFrames.ScopeControlDataFrames.ScopeReady(buffer); return(ready); } else { throw new InvalidOperationException("Wrong object type"); } }
///<summary> ///Returns scaled measurements from buffer. If buffer is not contain measurements, null is returned. ///<param name="data">Raw buffer data</param> ///<param name="voltsPerDiv">Voltage per division (in volts)</param> ///<param name="pointsPerDiv">Points per division (from scope Config class)</param> ///<param name="recordLength">Current scope record length</param> ///</summary> /// public static float[] GetFromBuffer(byte[] data, float voltsPerDiv, int pointsPerDiv, int recordLength, int vertPos, bool VposChangeable) { try { var DataFrame = new DataBlockDataFrame(data); if (DataFrame != null) { byte[] rawData = new byte[DataFrame.Data.Count() - 14]; //4 reserved for (int i = 5; i < DataFrame.Data.Count() - 9; i++) //[syncChar][frameID][frameSize][frameSize][frameFunc][data1]...[dataN][8][0][0][0][0][0][0][0][0] { rawData[i - 5] = DataFrame.Data[i]; } if (rawData.Count() == recordLength - 5) { return(getScaledMeasurements(rawData, voltsPerDiv, pointsPerDiv, vertPos, VposChangeable) ?? null); } } } catch (InvalidDataFrameException ex) { try { var DataFrame = new DataSampleDataFrame(data); if (DataFrame != null) { byte[] rawData = new byte[1]; rawData[0] = DataFrame.Data[5]; return(getScaledMeasurements(rawData, voltsPerDiv, pointsPerDiv, vertPos, VposChangeable) ?? null); } } catch (InvalidDataFrameException ex2) { } } return(null); }
private void btnApply_Click(object sender, EventArgs e) { foreach (var cb in this.Controls) { if (cb is CheckBox) { ((CheckBox)cb).Checked = false; } } txtBufferOutput.Clear(); var port = GetSerialPort(); if (port != null) { if (txtEditCommand.Text != "") { var bytes = txtEditCommand.Text.Split(' '); List <byte> proper = new List <byte>(); foreach (var value in bytes) { if (value != "") { proper.Add(byte.Parse(value, System.Globalization.NumberStyles.HexNumber)); } } port.Write(proper.ToArray(), 0, proper.ToArray().Count()); } else { // WriteFrame((DataFrame)cbxCommandSelect.SelectedItem, port); } System.Threading.Thread.Sleep(Convert.ToInt16(cbxReadDelay.Text)); output = InstReadBuffer(port); port.Dispose(); var tempText = ""; foreach (byte val in output) { tempText += val + ", "; } if (tempText.Length > 0) { txtBufferOutput.Text = (tempText.Remove(tempText.Length - 2)); } port.Close(); port.Dispose(); try { DSO.DataFrames.DSO068.CurrConfigDataFrame config = new DSO.DataFrames.DSO068.CurrConfigDataFrame(output); cbCurrConf.Checked = true; } catch (InvalidDataFrameException) { cbCurrConf.Checked = false; } try { DSO.DataFrames.DSO112.CurrConfigDataFrame config = new DSO.DataFrames.DSO112.CurrConfigDataFrame(output); cbCurrConf.Checked = true; } catch (InvalidDataFrameException) { cbCurrConf.Checked = false; } try { CurrParamDataFrame config = new CurrParamDataFrame(output); SetParamToComboboxes(config); EnableConfigComboboxes(false); cbCurrParam.Checked = true; } catch (InvalidDataFrameException) { cbCurrParam.Checked = false; } try { DataBlockDataFrame config = new DataBlockDataFrame(output); cbDataBlock.Checked = true; } catch (InvalidDataFrameException) { cbDataBlock.Checked = false; } try { DataSampleDataFrame config = new DataSampleDataFrame(output); cbDataSample.Checked = true; } catch (InvalidDataFrameException) { cbDataSample.Checked = false; } try { ScopeReady config = new ScopeReady(output); cbScopeReady.Checked = true; } catch (InvalidDataFrameException) { cbScopeReady.Checked = false; } try { USBScopeModeExited config = new USBScopeModeExited(output); cbExitedScope.Checked = true; } catch (InvalidDataFrameException) { cbExitedScope.Checked = false; } try { CommandAcknowledgedDataFrame config = new CommandAcknowledgedDataFrame(output); cbCommandAck.Checked = true; } catch (InvalidDataFrameException) { cbCommandAck.Checked = false; } } }