Ejemplo n.º 1
0
        public static int DSGetNextData(ref DtuDataStruct pDataStruct, ushort waitseconds)
        {
            if (IsRunning)
            {
                if (DataQueue.Count == 0)
                {
                    return(0);
                }

                //解析协议
                var frame = new byte[0];
                lock (m_lock)
                {
                    frame = DataQueue[0];
                    DataQueue.RemoveAt(0);
                }

                var result = ExtractFrame(ref frame);

                if (!result)
                {
                    return(0);
                }

                pDataStruct.m_data_buf = frame;
                pDataStruct.m_data_len = (ushort)(frame.Length);
                pDataStruct.m_phoneno  = Encoding.Default.GetBytes("13300000000");
                return(1);
            }
            return(1);
        }
Ejemplo n.º 2
0
 public static extern int DSGetNextData(ref DtuDataStruct pDataStruct, ushort waitseconds);