public override void SetVal(int ByteCount, int Digits, string hexStr)
        {
            if (ByteCount <= 0 && Digits <= 0)
            {
                ByteCount = 3;
                Digits    = 0;
            }

            this.Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);

            try
            {
                this.dd = Convert.ToInt32(hexStr.Substring(0, 2));
            }
            catch
            {
                this.dd = 0;
            }
            try
            {
                this.HH = Convert.ToInt32(hexStr.Substring(2, 2));
            }
            catch
            {
                this.HH = 0;
            }
            try
            {
                this.mm = Convert.ToInt32(hexStr.Substring(4, 2));
            }
            catch
            {
                this.mm = 0;
            }
        }
示例#2
0
        public override string GetHexStr()
        {
            if (!Ampere.HasValue)
            {
                return("");
            }

            try
            {
                int ByteCount = 2;
                int Digits    = 1;

                if ((double)Ampere.Value * Math.Pow(10, Digits) >= Math.Pow(10, ByteCount * 2))
                {
                    return("");
                }

                StringBuilder builderC = new StringBuilder();
                builderC.Append(((double)Ampere.Value * Math.Pow(10, Digits)).ToString().PadLeft(ByteCount * 2, '0'));

                StringBuilder builder = new StringBuilder();
                builder.Append(Key.ToString("X").PadLeft(2, '0'));
                Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);
                builder.Append(Length.ToString("X").PadLeft(2, '0'));
                builder.Append(builderC.ToString());
                return(builder.ToString());
            }
            catch
            {
                return("");
            }
        }
 public override void SetVal(int ByteCount, int Digits, string hexStr)
 {
     if (ByteCount != 0 && Digits != 0)
     {
         this.Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);
     }
 }
        public override string GetHexStr()
        {
            StringBuilder builderC = new StringBuilder();

            for (int i = 0; i < 4; i++)
            {
                if (CenterStations.Length > i)
                {
                    if (CenterStations[i] > 0 && CenterStations[i] <= 255)
                    {
                        builderC.Append(CenterStations[i].ToString("X").PadLeft(2, '0'));
                    }
                    else
                    {
                        builderC.Append("00");
                    }
                }
            }

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
        public override void SetVal(int ByteCount, int Digits, string hexStr)
        {
            if (ByteCount <= 0 && Digits <= 0)
            {
                ByteCount = 4;
                Digits    = 0;
            }

            this.Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);

            this.AlarmStateV = HexStringUtility.HexStringToBinString(hexStr).PadLeft(32, '0');
        }
示例#6
0
        public override string GetHexStr()
        {
            StringBuilder builderC = new StringBuilder();

            builderC.Append(HexStringUtility.StrToHexString(SimNoTypeV.ToString()));
            builderC.Append(HexStringUtility.StrToHexString(SimNo));

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
示例#7
0
        public override string GetHexStr()
        {
            StringBuilder builderC = new StringBuilder();

            if (HexStr.Length % 2 == 1)
            {
                builderC.Append("0");
            }
            builderC.Append(HexStr);

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
示例#8
0
        public override string GetHexStr()
        {
            //if (!Enum.IsDefined(typeof(ChannelType), ChannelTypeV))
            //    return "";

            StringBuilder builderC = new StringBuilder();

            if (Enum.IsDefined(typeof(ChannelType), ChannelTypeV))
            {
                builderC.Append(ChannelTypeV.ToString("X").PadLeft(2, '0'));
                if (ChannelTypeV == (int)ChannelType._02)
                {
                    string[] ips = IP.Split('.');
                    for (int i = 0; i < 4; i++)
                    {
                        if (ips.Length > i)
                        {
                            builderC.Append(ips[i].PadLeft(3, '0'));
                        }
                        else
                        {
                            builderC.Append("000");
                        }
                    }
                    builderC.Append(Port.ToString().PadLeft(6, '0'));
                }
                else
                {
                    if (Add.Length % 2 == 1)
                    {
                        builderC.Append("0");
                    }
                    builderC.Append(Add);
                }
            }

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
        public override string GetHexStr()
        {
            if (!Val.HasValue || (Val < 0 || Val > 9999))
            {
                return("");
            }

            StringBuilder builderC = new StringBuilder();

            builderC.Append(Val.Value.ToString().PadLeft(4, '0'));

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
示例#10
0
        public override void SetVal(int ByteCount, int Digits, string hexStr)
        {
            if (ByteCount <= 0 && Digits <= 0)
            {
                ByteCount = 2;
                Digits    = 2;
            }

            this.Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);

            try
            {
                this.Val = (decimal)(Convert.ToInt32(hexStr) * 1.0 / Math.Pow(10, Digits));
            }
            catch
            {
                this.Val = null;
            }
        }
        public override string GetHexStr()
        {
            if (!Enum.IsDefined(typeof(WorkType), WorkTypeV))
            {
                return("");
            }

            StringBuilder builderC = new StringBuilder();

            builderC.Append(WorkTypeV.ToString("X").PadLeft(2, '0'));

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
示例#12
0
        public override string GetHexStr()
        {
            StringBuilder builderC = new StringBuilder();

            if (Password.Length <= 4)
            {
                builderC.Append(Password.PadLeft(4, '0'));
            }
            else
            {
                builderC.Append(Password.Substring(0, 4));
            }

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
        public override string GetHexStr()
        {
            StringBuilder builderC = new StringBuilder();

            if (RemoteStation.Length <= 10)
            {
                builderC.Append(RemoteStation.PadLeft(10, '0'));
            }
            else
            {
                builderC.Append(RemoteStation.Substring(0, 10));
            }

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
        public override string GetHexStr()
        {
            StringBuilder builderC = new StringBuilder();

            if (BitStr.Length <= 64)
            {
                builderC.Append(HexStringUtility.BinStringToHexString(BitStr.PadLeft(64, '0')));
            }
            else
            {
                builderC.Append(HexStringUtility.BinStringToHexString(BitStr.Substring(0, 64)));
            }

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(builderC.ToString().Length / 2, 0), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
        public override string GetHexStr()
        {
            int ByteCount = 4;
            int Digits    = 0;

            StringBuilder builderC = new StringBuilder();

            if (AlarmStateV.Length <= 32)
            {
                builderC.Append(HexStringUtility.BinStringToHexString(AlarmStateV).PadLeft(8, '0'));
            }
            else
            {
                builderC.Append(HexStringUtility.BinStringToHexString(AlarmStateV).Substring(0, 8));
            }

            StringBuilder builder = new StringBuilder();

            builder.Append(Key.ToString("X").PadLeft(2, '0'));
            Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);
            builder.Append(Length.ToString("X").PadLeft(2, '0'));
            builder.Append(builderC.ToString());
            return(builder.ToString());
        }
        public override string GetHexStr()
        {
            try
            {
                int ByteCount = 3;
                int Digits    = 0;

                StringBuilder builderC = new StringBuilder();
                builderC.Append(dd.ToString().PadLeft(2, '0'));
                builderC.Append(HH.ToString().PadLeft(2, '0'));
                builderC.Append(mm.ToString().PadLeft(2, '0'));

                StringBuilder builder = new StringBuilder();
                builder.Append(Key.ToString("X").PadLeft(2, '0'));
                Length = Convert.ToByte(WaterBaseProtocol.GetLengthHexStr(ByteCount, Digits), 16);
                builder.Append(Length.ToString("X").PadLeft(2, '0'));
                builder.Append(builderC.ToString());
                return(builder.ToString());
            }
            catch
            {
                return("");
            }
        }