串行字节流移位数组元素(Processing& Arduino)

时间:2014-02-02 19:54:12

标签: serial-port arduino processing

我正在使用Processing通过串口向Arduino卡发送一个字节数组。我有一个奇怪的问题,Arduino似乎没有“同步”读取数组 - 字节元素似乎转移到Arduino代码。

例如,从Processing I发送数组:

array = [0, 1, 2, 3, 4];

并且Arduino可以将其读作:

array = [2, 3, 4, 0, 1];

这个问题随机出现 - 大约是我尝试的1/3,而且转变也总是随机的。当它工作时,它会在会话期间继续工作,直到我重新启动连接。

有没有其他人遇到过类似的问题?关于如何解决这个问题,您有什么建议吗?

此致 托拜厄斯

1 个答案:

答案 0 :(得分:1)

您能否提供一个显示如何发送和读取字节的代码示例? 特别是阅读arduino代码非常重要。

目前尚不清楚如何同步传输:假设您发送5个字节 - Arduino代码在收到完整数组时如何检测? 如果您依赖串行端口缓冲区并且只计算5个传入字节,假设它们构成一个数组,则检查如果至少丢失一个字节会发生什么(例如由于处理代码重新启动而某些字节已经发送到Arduino) 。