因为经常在CSDN论坛看到很多刚刚接触与下位机通讯编程的新手对于串口的通讯很是茫然,想到当初自己初学时的境遇,特写此工具,希望能给初学串口通讯的C#程序员们一些帮助。
下载地址:
http://download.csdn.net/detail/yeqi3000/466313410分绝对值啊。不过突然感觉自己是来帮新手。。手一抖设置了10分,罪过,罪过啊。真的值10分啊!好吧,或许不值,哎。反正已经设置了10分了,CSDN不让改的,大家都懂的。另外如果你有好的建议,需要添加什么功能,也可以提出来,我在下一个版本中改进。
下载地址:
http://download.csdn.net/detail/yeqi3000/466313410分绝对值啊。不过突然感觉自己是来帮新手。。手一抖设置了10分,罪过,罪过啊。真的值10分啊!好吧,或许不值,哎。反正已经设置了10分了,CSDN不让改的,大家都懂的。另外如果你有好的建议,需要添加什么功能,也可以提出来,我在下一个版本中改进。
还有一些异常了啥的也没有做判断需要改进的地方挺多。
//
// 摘要:
// 从 System.IO.Ports.SerialPort 输入缓冲区读取一些字节并将那些字节写入字节数组中指定的偏移量处。
//
// 参数:
// buffer:
// 将输入写入到其中的字节数组。
//
// offset:
// 缓冲区数组中开始写入的偏移量。
//
// count:
// 要读取的字节数。
//
// 返回结果:
// 读取的字节数。
//
// 异常:
// System.ArgumentNullException:
// 传递的 buffer 为 null。
//
// System.InvalidOperationException:
// 指定的端口未打开。
//
// System.ArgumentOutOfRangeException:
// offset 或 count 参数超出了所传递的 buffer 的有效区域。offset 或 count 小于零。
//
// System.ArgumentException:
// offset 加上 count 大于 buffer 的长度。
//
// System.TimeoutException:
// 没有可以读取的字节。
public int Read(byte[] buffer, int offset, int count);返回值意义何在?
// 读取的字节数。这里不是写了嘛?返回读取的字节数。
如果串口设备发给你的256字节。但你读的时候可能返回的只是20字节。
也就是你read的时候返回值只有20字节。其余的你可能并没有读到。