2014-10-06 151 views
0

我使用的是当X字节到达缓冲区时激活的事件。是典型的buffer(),available()和read()串口方法。我的问题是,当你通过无线(或任何媒介)发送一个数据包时,你可以期望数据包一次到达的总长度?或字节通过形成数据包的缓冲区顺序到达?因为我不知道如果我需要使用buffer()考虑总包长度或考虑到形成包的字节。 我的猜测是固件首先使用cheksum操作,以确保数据包完全到达,然后将其移动到缓冲区。不是吗?缓冲区和数据包

+0

有时甚至长度字段可能到达碎片。查找“框架协议”。 – user373884 2014-10-08 12:46:39

回答

1

串口和TCP连接是字节流。没有消息边界大于一个字节。在没有其他协议的情况下,您不能传输大于一个字节的消息。