我正在将串行数据从arduino发送到android设备。

这是arduino草图的代码:

void setup(){
Serial.begin(9600);
  delay(10000);

Serial.println(4);
delay(2000);
Serial.println(7);
delay(2000);
Serial.println(7);
delay(2000);
Serial.println(5);

}

void loop()
{

  }


以及开始在我的Android设备上打印的数据是什么:
        [53, 13, 10, 0, 0...],其余数字为零。现在,我将数据发送到的数组的大小为1024,所以我知道为什么它一直打印零,但是前几个数字又是怎么回事?

最佳答案

Serial.println(5);


确实会产生字节序列

[53, 13, 10,


因为'5'的ascii代码为53,而println附加了回车符(13)和换行符(10)。

看来您错过了开始。请注意,您的数据不一定会以有意义的大小的块接收,而是我会逐个散布在较小的数据包中,这些数据包会分解一条消息,或者在较大的数据包中组合消息,或者这两者。

09-25 22:22
查看更多