Example #1
0
        private void SendToPLCTest(Byte [] data)
        {
            //this.Wrapper.Send(Encoding.ASCII.GetBytes(this.tbxSendText.Text.Trim()));
            //this.Wrapper.Connect();

            if (!socketWrapper.IsConnected)
            {
                socketWrapper.Connect();
            }



            //byte[] data = { 0x00, 0x00, 0x00, 0x64, 0x00, 0x01, 0x27, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };

            List <byte> values = new List <byte>(255);

            values.AddRange(data);

            for (int i = 0; i < 100 * 5; i++)
            {
                Console.WriteLine("发送:" + DateTime.Now.ToString("yyyy-MM-dd HH:MM:SS:fff"));
                socketWrapper.Write(values.ToArray());

                //[4].防止连续读写引起前台UI线程阻塞00
                Application.DoEvents();
                //[5].读取Response: 写完后会返回12个byte的结果
                byte[] responseHeader = socketWrapper.Read(12);
                Console.WriteLine("接收:" + DateTime.Now.ToString("yyyy-MM-dd HH:MM:SS:fff"));

                //Thread.Sleep(100);
            }
        }