嗨,我正盯着看,已经破解了从Python向我的Arduino发送多条信息。我现在想从我的Arduino发送信息到python我看过可能的例子,但他们都发送只显示一行信息被发送。
他就是我所坚持的.Arduino正在发送一个起始编号255,然后是一个ID,然后在终端窗口上显示它的信息。
255 start chr
1 ch ID
99 Value
我想将它们拆分为python中的各个数组。
感谢任何提示。
答案 0 :(得分:1)
最简单的方法是使用专用的分隔符(例如逗号)并相应地拆分字符串。那就是:编写代码的Arduino端,以便在Python端进行解析变得容易。
答案 1 :(得分:1)
将Arduino项目打印成带有分隔符的行,例如逗号:
Serial.print(VALUE 1);
Serial.print((" , "));
Serial.print(VALUE 2);
Serial.print((" , "));
Serial.println(LAST VALUE);
将println用于最后一个值会将之前的所有打印合并为一行。使用Arduino串行监视器的结果如下:
VALUE 1 , VALUE 2 , LAST VALUE
您可以轻松地在python中拆分值,并为每个值分配一个变量,例如从数组中获取值:
SERIALDATA= sensorData.readline() #Read line of text from Arduino
DATASPLIT= SERIALDATA.split(' , ') #Splits the line of text into array of strings composed of each individual sensor data
pyVALUE1= DATASPLIT [0]
pyVALUE2= DATASPLIT [1]
pyFINALVAL= DATASPLIT [2]