本帖最后由 bigjimmy8257 于 2019-8-8 14:29 编辑
Neil,您好,
我刚刚发现了一个现象,如果是传输ASCII码 为 0x1 - 0x7F 的数据,那么接收是完全没有问题的,比如下面:
发送方:
byte[] WriteBuffer = new byte[80] { 0x7F, 0x1, 0x2, 0x9, 0x8, 0xF, 0x7e, 59 };
ComPort.Write(WriteBuffer, 0, WriteBuffer.Length);
接收方:
buffer = new byte[e.Data.Length];
e.Data.CopyTo(buffer, 0);
在接收方打断点,可以看到数据一次性接收到e.Data 中
如果 传送的数据中有 0x0, 0x80-0xFF 的字节数据,DataReceived 会中断,并且设置 e.Data = 0x0, e.Data.Length = 0, 这个会导致数据接收的错误。
我使用 ‘蓝牙串口’工具进行了测试,它可以正常的接收这些字节数据。
因为在二进制数据传输的时候,上述0, 0x80 -0xFF 的数据是很正常的数据,希望开发团队能修复这个可能的bug ?
大杰米。
|