关于串口BytesToRead属性的奇怪问题!!!
上位机接收下位从串口传送的数据:(上位机每读取一次下位机就发上来32个字节)
                      private static int ReadSize;         //读取缓冲区的大小
                      ……
                      ReadSize = serialPort.BytesToRead;
                      serialPort.Read(Read_Buffer, 0, ReadSize);
                      ……
问题出在红色代码部分,比如第一次读取时 serialPort.BytesToRead=0x20,但执行该语句后ReadSize的值依然是0;再读取一次,ReadSize(0x30)的值就改变了,但也并不等于serialPort.BytesToRead(0x50)   请问这是为什么?弄了很久都没搞明白原因,请高手们解惑!
------解决方案--------------------
private static int ReadSize;不要把ReadSize定义成static