示例#1
0
        /// <summary>
        /// Запрос флага старт/пауза (0 - пауза, 1- старт, -1 - изначальное состояние) и флага реверса (0 - реверс не вызван, 1 - вызван, -1 - изначальное состояние)
        /// </summary>
        public void UpdateFlags()
        {
            lock (_lockObject)
            {
                var device = GetBedUsbDevice();
                if (device == null)
                {
                    return;
                }

                var message = new byte[] { 0x6e, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff };
                device.write(message);
                var readData = device.read();
                if (readData != null)
                {
                    if (readData[5] == 0)
                    {
                        StartFlag = StartFlag.Pause;
                    }
                    if (readData[5] == 1)
                    {
                        StartFlag = StartFlag.Start;
                    }
                    if (readData[7] == 0)
                    {
                        ReverseFlag = ReverseFlag.NotReversed;
                    }
                    if (readData[7] == 1)
                    {
                        ReverseFlag = ReverseFlag.Reversed;
                    }
                }
                device.close();
            }
        }
示例#2
0
 public BedUsbController()
 {
     StartFlag   = StartFlag.Default;
     ReverseFlag = ReverseFlag.Default;
     _lockObject = new object();
 }