/// <summary>
 /// Записывет начальное значение часов в платы и разрешает клок МС
 /// </summary>
 /// <param name="ожидание"></param>
 public void  ежимСинхИлиНет(int ожидание)
 {
     try
     {
         TimeTaimer(ожидание);
         if (ClassParentsBAAK.Синхронизация)
         {
             rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Запуск с синхронизацией"; }));//
             Thread.Sleep(2000);
             if (!set.FlagClok)
             {
                 rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Подготовка МС"; }));
                 Thread.Sleep(2000);
                 //TimeTaimer(ожидание);
                 BAAK12T.ЗаписьВремяРегистрDelegate?.Invoke();
                 ClassBAAK12NoTail.ЗаписьВремяРегистрDelegate?.Invoke();
                 BAAK12T.СтартЧасовDelegate?.Invoke();
                 //СтартЧасовDelegate();
                 // Thread.Sleep(ожидание * 1000);
                 int min = 0;
                 while (min < ожидание * 1000)
                 {
                     rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Ожидание =" + ожидание + " сек." + " Осталось " + (((ожидание * 1000) - min) / 1000).ToString() + " сек."; }));
                     Thread.Sleep(1000);
                     min = min + 1000;
                 }
                 try
                 {
                     MS.АвтономныйКлокРазрешен(1);
                 }
                 catch
                 {
                 }
                 try
                 {
                     // MS1.АвтономныйКлокРазрешен(1);
                 }
                 catch
                 {
                 }
             }
             else//запуск с МГВМ
             {
                 rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Подготовка МГВС"; }));
                 Thread.Sleep(1000);
                 Thread.Sleep(1000);
                 BAAK12T.ЗаписьВремяРегистрDelegate?.Invoke();
                 BAAK12T.СтартЧасовDelegate?.Invoke();
                 int min = 0;
                 while (min < ожидание * 1000)
                 {
                     rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Ожидание =" + ожидание + "сек." + " Осталось " + (((ожидание * 1000) - min) / 1000).ToString() + "сек."; }));
                     Thread.Sleep(1000);
                     min = min + 1000;
                 }
                 int flagStart = 1;
                 rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Ожидается ответ от МГВС"; }));
                 Thread.Sleep(1000);
                 while (flagStart == 1)
                 {
                     Thread.Sleep(500);
                     string v = "{" + quote + "name" + quote + ":" + quote + "check_sync_progress" + quote + "," + quote + "link_mask" + quote + ":" + set.LincClok + "," + quote + "delay" + quote + ":" + set.DelayClok + "}";
                     ОтправкаЧтение(v, set.IpMGVS, set.PortMGVS);
                     flagStart = MS.status;
                 }
                 rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Далее"; }));
             }
         }
         else
         {
             rezimYst.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() => { rezimYst.Content = "Запуск без синхронизации"; }));
             Thread.Sleep(2000);
             //TimeTaimer(5);
             BAAK12T.ЗаписьВремяРегистрDelegate?.Invoke();
             ClassBAAK12NoTail.ЗаписьВремяРегистрDelegate?.Invoke();
             // СтартЧасовDelegate();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("Ошибка при работе с синхронизацией");
     }
 }