我正在将串行数据从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)。
看来您错过了开始。请注意,您的数据不一定会以有意义的大小的块接收,而是我会逐个散布在较小的数据包中,这些数据包会分解一条消息,或者在较大的数据包中组合消息,或者这两者。