public static void MessageSendCompleted1(object sender, SendOrRecvMsgEventArgs e)
        {
            //  if (e.Msg.Contains("COUT") && e.Msg.Contains("212880"))
            try
            {
                if (e.Msg.Contains("COUT") && e.Msg.Contains(localCommunicateStr_1))
                {
                    String   str      = e.Msg.ToString();
                    String[] arraystr = str.Split(',');
                    //if (arraystr.Count() == 10)
                    //{
                    localCommunicateStr_1 = "8888#####";
                    MessageBox.Show("北斗卫星指挥机通信成功! \n返回信息:\n" + arraystr[8]);
                    // }
                }
                else if (e.Msg.Contains("SJXX") && flag == 1)
                {
                    String   str      = e.Msg.ToString();
                    String[] arraystr = str.Split(',');
                    //string time1 = arraystr[1];
                    SystemTime MySystemTime = new SystemTime();
                    //$SJXX,2016,11,4,16,1,3,%
                    MySystemTime.vYear = ushort.Parse(arraystr[1]);

                    MySystemTime.vMonth = ushort.Parse(arraystr[2]);

                    MySystemTime.vDay = ushort.Parse(arraystr[3]);

                    MySystemTime.vHour = ushort.Parse(arraystr[4]);

                    MySystemTime.vMinute = ushort.Parse(arraystr[5]);

                    MySystemTime.vSecond = ushort.Parse(arraystr[6]);

                    SystemTimeConfig.SetLocalTime(MySystemTime);
                    flag = 0;
                    MessageBox.Show("授时成功!");
                }
            }
#pragma warning disable CS0168 // 声明了变量“e1”,但从未使用过
            catch (Exception e1)
#pragma warning restore CS0168 // 声明了变量“e1”,但从未使用过
            {
            }
        }
        public static void MessageSendCompleted1(object sender, SendOrRecvMsgEventArgs e)
        {
            //  if (e.Msg.Contains("COUT") && e.Msg.Contains("212880"))
            try
            {
                if (e.Msg.Contains("COUT") && e.Msg.Contains(localCommunicateStr))
                {
                    String   str      = e.Msg.ToString();
                    String[] arraystr = str.Split(',');
                    if (arraystr.Count() == 10)
                    {
                        localCommunicateStr = "99999#####";
                        MessageBox.Show("北斗卫星普通型本地通信成功! \n返回信息:\n" + arraystr[8]);
                    }
                }
                else if (e.Msg.Contains("TINF"))
                {
                    String     str          = e.Msg.ToString();
                    String[]   arraystr     = str.Split(',');
                    string     time1        = arraystr[1];
                    SystemTime MySystemTime = new SystemTime();
                    //2016-11-04 11:32:06.67
                    MySystemTime.vYear = ushort.Parse(time1.Substring(0, 4));

                    MySystemTime.vMonth = ushort.Parse(time1.Substring(5, 2));

                    MySystemTime.vDay = ushort.Parse(time1.Substring(8, 2));

                    MySystemTime.vHour = ushort.Parse(time1.Substring(11, 2));

                    MySystemTime.vMinute = ushort.Parse(time1.Substring(14, 2));

                    MySystemTime.vSecond = ushort.Parse(time1.Substring(17, 2));

                    SystemTimeConfig.SetLocalTime(MySystemTime);
                    MessageBox.Show("授时成功!");
                }
            }
#pragma warning disable CS0168 // 声明了变量“e1”,但从未使用过
            catch (Exception e1)
#pragma warning restore CS0168 // 声明了变量“e1”,但从未使用过
            {
            }
        }
Esempio n. 3
0
        /**
         * 获取压力数据的tag信息
         * **/
        private byte[] getWaterMeterTag(Dictionary <String, String> settings)
        {
            int flag = 0;

            byte[] result = new byte[this.getWaterMeterTagCount(settings)];

            //获取采集开始时间
            if (settings.ContainsKey("waterMeter_stime"))
            {
                byte[] oid1             = { 0x10, 0x00, 0x01, 0x04, 0x00, 0x02 };
                String sl_stime         = settings["waterMeter_stime"];
                Int16  stime1           = (Int16)(Convert.ToInt16(sl_stime.Substring(0, 2)) * 60 + Convert.ToInt16(sl_stime.Substring(3, 2)));
                byte[] btime1           = BitConverter.GetBytes(stime1);
                byte[] setting_sl_stime = new byte[8];
                oid1.CopyTo(setting_sl_stime, 0);
                setting_sl_stime[6] = btime1[1];
                setting_sl_stime[7] = btime1[0];
                setting_sl_stime.CopyTo(result, flag);
                flag = flag + 8;
            }

            if (settings.ContainsKey("waterMeter_period"))
            {
                //周期
                String yw_per         = settings["waterMeter_period"];
                byte[] yw_oid7        = { 0x10, 0x00, 0x00, 0x62, 0x00, 0x02 };
                Int16  per            = (Convert.ToInt16(yw_per));
                byte[] yw_bper        = BitConverter.GetBytes(per);
                byte[] setting_yw_per = new byte[8];
                yw_oid7.CopyTo(setting_yw_per, 0);
                setting_yw_per[6] = yw_bper[1];
                setting_yw_per[7] = yw_bper[0];
                setting_yw_per.CopyTo(result, flag);
                flag = flag + 8;
            }

            SystemTimeConfig sysTimeConfig = new SystemTimeConfig(null);

            byte[] btConfig = sysTimeConfig.getConfig(new byte[0]);
            btConfig.CopyTo(result, flag);

            return(result);
        }
Esempio n. 4
0
        /**
         * 获取液位数据的tag信息
         * **/
        private byte[] getYWTag(Dictionary <String, String> settings)
        {
            int flag = 0;

            byte[] result = new byte[getYWTagCount(settings)];
            if (settings.ContainsKey("yw_itr"))
            {
                //采集间隔
                byte[] yw_oid2        = { 0x10, 0x00, 0x01, 0x05, 0x00, 0x02 };
                String yw_itr         = settings["yw_itr"];
                Int16  yw_sitr1       = (Convert.ToInt16(yw_itr));
                byte[] yw_bsitr1      = BitConverter.GetBytes(yw_sitr1);
                byte[] setting_yw_itr = new byte[8];
                yw_oid2.CopyTo(setting_yw_itr, 0);
                setting_yw_itr[6] = yw_bsitr1[1];
                setting_yw_itr[7] = yw_bsitr1[0];
                setting_yw_itr.CopyTo(result, flag);
                flag = flag + 8;
            }

            if (settings.ContainsKey("yw_cnt"))
            {
                //采集次数
                String yw_cnt         = settings["yw_cnt"];
                byte[] yw_oid3        = { 0x10, 0x00, 0x01, 0x06, 0x00, 0x02 };
                Int16  yw_scnt1       = (Convert.ToInt16(yw_cnt));
                byte[] yw_bscnt1      = BitConverter.GetBytes(yw_scnt1);
                byte[] setting_yw_cnt = new byte[8];
                yw_oid3.CopyTo(setting_yw_cnt, 0);
                setting_yw_cnt[6] = yw_bscnt1[1];
                setting_yw_cnt[7] = yw_bscnt1[0];
                setting_yw_cnt.CopyTo(result, flag);
                flag = flag + 8;
            }

            if (settings.ContainsKey("yw_rept"))
            {
                //重试次数
                String sl_rept = settings["yw_rept"];
                byte[] oid4    = { 0x10, 0x00, 0x00, 0x0A, 0x00, 0x01 };
                byte   rept    = (Convert.ToByte(sl_rept));
                //byte[] brept = BitConverter.GetBytes(rept);
                byte[] setting_sl_rept = new byte[7];
                oid4.CopyTo(setting_sl_rept, 0);
                setting_sl_rept[6] = rept;
                //setting_sl_rept[7] = brept[0];
                setting_sl_rept.CopyTo(result, flag);
                flag = flag + 7;
            }

            if (settings.ContainsKey("yw_reset"))
            {
                //重启
                String yw_reset         = settings["yw_reset"];
                byte[] oid5             = { 0x10, 0x00, 0x00, 0x61, 0x00, 0x01 };
                byte   reset            = (Convert.ToByte(yw_reset));
                byte[] setting_yw_reset = new byte[7];
                oid5.CopyTo(setting_yw_reset, 0);
                setting_yw_reset[6] = reset;
                setting_yw_reset.CopyTo(result, flag);
                flag = flag + 7;
            }

            if (settings.ContainsKey("yw_height"))
            {
                //高度
                String yw_height         = settings["yw_height"];
                byte[] oid6              = { 0x10, 0x00, 0x00, 0x60, 0x00, 0x04 };
                float  height            = (Convert.ToSingle(yw_height));
                byte[] bHeight           = BitConverter.GetBytes(height);
                byte[] setting_yw_height = new byte[10];
                oid6.CopyTo(setting_yw_height, 0);
                setting_yw_height[6] = bHeight[0];
                setting_yw_height[7] = bHeight[1];
                setting_yw_height[8] = bHeight[2];
                setting_yw_height[9] = bHeight[3];
                setting_yw_height.CopyTo(result, flag);
                flag = flag + 10;
            }

            if (settings.ContainsKey("yw_period"))
            {
                //周期
                String yw_per         = settings["yw_period"];
                byte[] yw_oid7        = { 0x10, 0x00, 0x00, 0x62, 0x00, 0x02 };
                Int16  per            = (Convert.ToInt16(yw_per));
                byte[] yw_bper        = BitConverter.GetBytes(per);
                byte[] setting_yw_per = new byte[8];
                yw_oid7.CopyTo(setting_yw_per, 0);
                setting_yw_per[6] = yw_bper[1];
                setting_yw_per[7] = yw_bper[0];
                setting_yw_per.CopyTo(result, flag);
                flag = flag + 8;
            }

            SystemTimeConfig sysTimeConfig = new SystemTimeConfig(null);

            byte[] btConfig = sysTimeConfig.getConfig(new byte[0]);
            btConfig.CopyTo(result, flag);

            return(result);
        }
Esempio n. 5
0
        /**
         * 获取噪声数据的tag信息
         * **/
        private byte[] getNosieTag(Dictionary <String, String> settings)
        {
            int flag = 0;
            int cc   = getNoiseTagCount(settings);

            byte[] result = new byte[cc];

            SystemTimeConfig sysTimeConfig = new SystemTimeConfig(null);

            byte[] btConfig = sysTimeConfig.getConfig(new byte[0]);
            btConfig.CopyTo(result, flag);
            flag = flag + 12;

            //获取采集开始时间
            if (settings.ContainsKey("sl_stime"))
            {
                byte[] oid1             = { 0x10, 0x00, 0x01, 0x04, 0x00, 0x02 };
                String sl_stime         = settings["sl_stime"];
                Int16  stime1           = (Int16)(Convert.ToInt16(sl_stime.Substring(0, 2)) * 60 + Convert.ToInt16(sl_stime.Substring(3, 2)));
                byte[] btime1           = BitConverter.GetBytes(stime1);
                byte[] setting_sl_stime = new byte[8];
                oid1.CopyTo(setting_sl_stime, 0);
                setting_sl_stime[6] = btime1[1];
                setting_sl_stime[7] = btime1[0];
                setting_sl_stime.CopyTo(result, flag);
                flag = flag + 8;
            }

            if (settings.ContainsKey("sl_itrl"))
            {
                //采集间隔
                byte[] oid2           = { 0x10, 0x00, 0x01, 0x05, 0x00, 0x02 };
                String sl_itr         = settings["sl_itrl"];
                Int16  sitr1          = (Convert.ToInt16(sl_itr));
                byte[] bsitr1         = BitConverter.GetBytes(sitr1);
                byte[] setting_sl_itr = new byte[8];
                oid2.CopyTo(setting_sl_itr, 0);
                setting_sl_itr[6] = bsitr1[1];
                setting_sl_itr[7] = bsitr1[0];
                setting_sl_itr.CopyTo(result, flag);
                flag = flag + 8;
            }

            if (settings.ContainsKey("sl_cnt"))
            {
                //采集次数
                String sl_cnt         = settings["sl_cnt"];
                byte[] oid3           = { 0x10, 0x00, 0x01, 0x06, 0x00, 0x02 };
                Int16  scnt1          = (Convert.ToInt16(sl_cnt));
                byte[] bscnt1         = BitConverter.GetBytes(scnt1);
                byte[] setting_sl_cnt = new byte[8];
                oid3.CopyTo(setting_sl_cnt, 0);
                setting_sl_cnt[6] = bscnt1[1];
                setting_sl_cnt[7] = bscnt1[0];
                setting_sl_cnt.CopyTo(result, flag);
                flag = flag + 8;
            }

            if (settings.ContainsKey("sl_rept"))
            {
                //重试次数
                String sl_rept         = settings["sl_rept"];
                byte[] oid4            = { 0x10, 0x00, 0x00, 0x0A, 0x00, 0x02 };
                Int16  rept            = (Convert.ToInt16(sl_rept));
                byte[] brept           = BitConverter.GetBytes(rept);
                byte[] setting_sl_rept = new byte[8];
                oid4.CopyTo(setting_sl_rept, 0);
                setting_sl_rept[6] = brept[1];
                setting_sl_rept[7] = brept[0];
                setting_sl_rept.CopyTo(result, flag);
                flag = flag + 8;
            }

            return(result);
        }