没有Seri​​al.print(5chars),Arduino程序无法运行

时间:2017-12-31 16:53:08

标签: arduino

以下代码正常运行,但我根本不想打印任何内容。

while(true) {
  String inputString2="";
  while(Serial.available()) {
    char inChar2 = char(Serial.read());
    //on va lire un char et l'enregistrer dans inChar
    inputString2 += inChar2;
    //on va concaténer inChar dans inputString
    Serial.print("12345");
  }
  if (inputString2.indexOf("ok\r\nok\r\n")!=-1) {
    //on vérifie quelle donnée a été lue
    break;
  }
  inputString2="";
}

Serial.print("12345");少于5个字符时,程序没有达到循环中断。

if (inputString2.indexOf("ok\r\nok\r\n")!=-1) {
  //on vérifie quelle donnée a été lue
  break;
}

1 个答案:

答案 0 :(得分:0)

ValueError: malformed string 比其他设备的串行发送快得多。因此while loop(while(Serial.available()))将始终初始化。

这是一个简单的编辑:

inputString2

但这并不好。怎么样?

String inputString2="";
while(true) {        
  while(Serial.available()) {
    char inChar2 = char(Serial.read());            
    inputString2 += inChar2;        
  }
  if (inputString2.indexOf("ok\r\nok\r\n")!=-1) {
    inputString2=""; //clear variable
    break;
  }  
}