如何设置串口一次读36个字节?能否搞个简单的程序看看

解决方案 »

  1.   

    你在读取的时候,先判断串口的数据是否大于36,然后每次读取36个长度,这样串口中的数据还在,也同时保证你的数据buffer中是36个byte
      

  2.   

    给你贴段代码
    serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);//过程注册 private static void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
            {
                
               int num = serialPort1.BytesToRead; //ByteToRead就是串口的buffer数据的个数
    if (num>=36)
                {
               byte[] data = new byte[36];
               serialPort1.Read(data, 0, 36);  //读数
                Encapsule(data); //数据处理
                }
            }
      

  3.   

    byte[] _buffRecive = new byte[36];_serialPort1.Read(_buffRecive,0,_buffRecive.Length);