locked
C# 串口通信 接收一部分数据 RRS feed

  • 问题

  • 用SerialPort控件实现与下位机的通信,下位机返回的数据量非常大,使用BytesToRead 获取到的字节数只是其中的一部分,因此获取到的数据只有开始部分,如何设置控件的参数才能读取串口中完整的数据呢?

    请高人指点!

    2010年6月3日 7:55

答案

  • 不要管那个BytesToRead,直接读。

     

    void _sport_DataReceived (object sender, 
     System.IO.Ports.SerialDataReceivedEventArgs e)
    {
     int data;
     while ((data = _sport.ReadByte ()) != -1)
     {
      _buffer.Add((byte)data);
     }
    }
    读入_buffer中。

     


    Tech Blog: http://gildor.cnblogs.com
    2010年6月6日 10:12