SerialPort com = new SerialPort("COM7", 115200,Parity.Mark,8,StopBits.One);
            byte[] newline = new byte[2];
            newline[0] = 13;
            newline[1] = 10;
            if (!com.IsOpen)
            {
                com.ReadTimeout = 200;
                com.ReadBufferSize = 512;
                com.WriteBufferSize = 512;
                com.Open();
                com.DiscardInBuffer();
                com.DiscardOutBuffer();
            }            //if (!com1.IsOpen)
            //{
            //    com1.ReadTimeout = 200;
            //    com1.ReadBufferSize = 512;
             //   com1.Open();
            //}
            //Array.Reverse(cmdarr, 0, cmdarr.Length);
            for (int i = 0; i < cmdarr.Length; i++)
            {
                com.Write(cmdarr, i, 1);
                Thread.Sleep(1100);
            }
            com.Write(newline, 0, 1);
            Thread.Sleep(1100);
            com.Write(newline, 1, 1);
            //com.Write(cmdarr, 5, 2);
            //com.Write(cmdarr, 1, 7);
            System.Threading.Thread.Sleep(2000);
            byte[] buffer = new byte[100];
            int j = com.BytesToRead;
            for (int i = 0; i < 20; i++)
            {
                buffer[i] = (byte)com.ReadByte();
            }
            
            com.Close();
            com.Dispose();
该段代码 给单片机发信息,一个一个发没问题,改为com.Write(newline, 0, cmdarr.Length);完蛋。
单片机回发则每个字节后都会多跟一个0x3F。求答案。很无奈