我已经尝试过在arduino中使用许多不同的方法拆分字符串,但似乎都不起作用。我的最新尝试:
String inData = "";
int cPosition;
String data[2];
int count = 1;
if (Serial.available() > 0) {
int ssize = Serial.available();
for(int i=0;i<ssize;i++){
inData += (char)Serial.read();
}
do{
cPosition = inData.indexOf(':');
if(cPosition != -1)
{
data[count] = inData.substring(0,cPosition);
count++;
}
}while(cPosition >=0);
Serial.println(data[1]);
}
我有两个值作为" 00 :00“传入,我想要拆分它们,但也要将拆分的值转换为Int,因为它们始终是00到100之间的整数。
发布于 2013-12-11 21:49:36
嘿,你有没有尝试过x=Serial.parseInt();
这个读取下一个数据,如果它会找到一个整数,例如x中的"fahijah123234fjrkaljf“,它将123234与下一个整数值相同
//incommeing: jsj123456asklfj654321faskl
int x,y;
x=Serial.parseInt();
y=Serial.parseInt();
Serial.println(x);//123456
Serial.println(y);//654321
使用strcat
或sprintf
合并它们
http://arduino.cc/en/Serial/ParseInt,http://arduino.cc/en/Serial/ParseFloat
https://stackoverflow.com/questions/20453473
复制相似问题