From 2a622d4aa29ac806a2ec8999f8c79a5eb38e6936 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Wed, 6 Jun 2018 10:18:39 +0200 Subject: [PATCH] RegisterReaders.SerialStream : Bug fix in DatastreamFrame in case of TiemFieldFormat == FieldFormat.None, ver. 2.18.916 --- .../SerialStream/DatastreamFrame.cs | 21 ++++++++++++------- .../SerialStream/SerialStream.cs | 2 +- TBF/Properties/AssemblyInfo.cs | 4 ++-- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/TBF/BenchControl/RegisterReaders/SerialStream/DatastreamFrame.cs b/TBF/BenchControl/RegisterReaders/SerialStream/DatastreamFrame.cs index 28db11ac2..8455488cd 100644 --- a/TBF/BenchControl/RegisterReaders/SerialStream/DatastreamFrame.cs +++ b/TBF/BenchControl/RegisterReaders/SerialStream/DatastreamFrame.cs @@ -121,20 +121,22 @@ namespace TBF.BenchControl.RegisterReaders.SerialStream Int64 uncorrected = (Int64)(((UInt64)volumeRawExtLast & ff.VolumeWindowMask) | VolumeRaw); if (Math.Abs(uncorrected - volumeRawExtLast) <= ff.VolumeWrapThreshold) { - VolumeRawExt = volumeRawExtLast = uncorrected; + VolumeRawExt = uncorrected; } else if (Math.Abs(uncorrected + ff.VolumeWrapIncrement - volumeRawExtLast) <= ff.VolumeWrapThreshold) { - VolumeRawExt = volumeRawExtLast = uncorrected + ff.VolumeWrapIncrement; + VolumeRawExt = uncorrected + ff.VolumeWrapIncrement; } else if (Math.Abs(uncorrected - ff.VolumeWrapIncrement - volumeRawExtLast) <= ff.VolumeWrapThreshold) { - VolumeRawExt = volumeRawExtLast = uncorrected - ff.VolumeWrapIncrement; + VolumeRawExt = uncorrected - ff.VolumeWrapIncrement; } else { - VolumeRawExt = volumeRawExtLast = uncorrected; + VolumeRawExt = uncorrected; } + + volumeRawExtLast = VolumeRawExt; /// Update referenced value from calling routine } if (ff.TimeFieldFormat == FieldFormat.HexadecimalWindow) @@ -147,24 +149,27 @@ namespace TBF.BenchControl.RegisterReaders.SerialStream Int64 uncorrected = (Int64)(((UInt64)timestampExtLast & ff.TimeWindowMask) | Timestamp); if (Math.Abs(uncorrected - timestampExtLast) <= ff.TimeWrapThreshold) { - TimestampExt = timestampExtLast = uncorrected; + TimestampExt = uncorrected; } else if (Math.Abs(uncorrected + ff.TimeWrapIncrement - timestampExtLast) <= ff.TimeWrapThreshold) { - TimestampExt = timestampExtLast = uncorrected + ff.TimeWrapIncrement; + TimestampExt = uncorrected + ff.TimeWrapIncrement; } else if (Math.Abs(uncorrected - ff.TimeWrapIncrement - timestampExtLast) <= ff.TimeWrapThreshold) { - TimestampExt = timestampExtLast = uncorrected - ff.TimeWrapIncrement; + TimestampExt = uncorrected - ff.TimeWrapIncrement; } else { - TimestampExt = timestampExtLast = uncorrected; + TimestampExt = uncorrected; } + + timestampExtLast = TimestampExt; /// Update referenced value from calling routine } else if (ff.TimeFieldFormat == FieldFormat.None) { TimestampExt = ff.RawTimeIncrementPerFrame * counter; + timestampExtLast = TimestampExt; /// Update referenced value from calling routine } f3 = byte.TryParse(frame.Substring(ff.FrameLength - 4, 2), NumberStyles.HexNumber, CultureInfo.CurrentCulture, out CheckSum); diff --git a/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs b/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs index e268e0379..f83de0c4f 100644 --- a/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs +++ b/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs @@ -41,7 +41,7 @@ namespace TBF.BenchControl.RegisterReaders.SerialStream public Config.Unit TimeUnits { get { return (myCfg.ProcParams != null) ? myCfg.ProcParams.TimeUnits : Config.Unit.s; } } public double TimeScaleFactor { get { return (myCfg.ProcParams != null) ? myCfg.ProcParams.TimeScaleFactor : 1; } } - public int TimeFieldStart { get { return (myCfg.ProcParams != null) ? myCfg.ProcParams.TimeFieldStart : 0; } } + public int TimeFieldStart { get { return (myCfg.ProcParams != null) ? myCfg.ProcParams.TimeFieldStart : 0; } } public int TimeFieldEnd { get { return (myCfg.ProcParams != null) ? myCfg.ProcParams.TimeFieldEnd : 0; } } public FieldFormat TimeFieldFormat { get { return (myCfg.ProcParams != null) ? myCfg.ProcParams.TimeFieldFormat : FieldFormat.None; } } diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index 2035bb0c4..6b09306fa 100644 --- a/TBF/Properties/AssemblyInfo.cs +++ b/TBF/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("2.18.915.0")] -[assembly: AssemblyFileVersion("2.18.915.0")] +[assembly: AssemblyVersion("2.18.916.0")] +[assembly: AssemblyFileVersion("2.18.916.0")]