public char Cf; //通讯状态 /// <summary> /// 从字节解析信号 /// </summary> /// <param name="buffer"></param> /// <returns></returns> public static RealSignal FromBytes(byte[] buffer) { RealSignal result = new RealSignal(); result.TagID = BitConverter.ToInt32(buffer, 0); result.DBHostIdx = BitConverter.ToInt32(buffer, 4); result.EngVal = BitConverter.ToDouble(buffer, 8); result.UpdateTime = Encoding.ASCII.GetChars(buffer, 16, 25); result.AL = Encoding.ASCII.GetChars(buffer, 41, 1)[0]; result.ASTime = Encoding.ASCII.GetChars(buffer, 42, 25); result.MaskState = Encoding.ASCII.GetChars(buffer, 67, 1)[0]; result.AMTime = Encoding.ASCII.GetChars(buffer, 68, 25); result.Cf = Encoding.ASCII.GetChars(buffer, 93, 1)[0]; return result; }
public void SetRealValueToSinal(int DBHostIdx, int Idx,RealSignal rs) { String IdStr= DBHostIdx + TDBHost.HOSTSEPARATOR + Idx.ToString(); var signal = SignalMaintenance.Instance[IdStr]; if (signal != null) { signal.Value = rs.EngVal.ToString(); SignalMaintenance.Instance.Save(signal); } }