C++ 比较解析的串行数据时出现问题
我在让函数通过ifStatus==True语句执行时遇到问题,但我不确定原因。当我打印这些行时,它们似乎是匹配的。我还包括了一个串行输出的示例 b'RCSSTATUS\r\n'b'假\r\n'b'RCSSTATUS\r\n'b'假\r\n'b'RCSSTATUS\r\n'b'假\r\n com=command=DATASET='RCSSTATUS'+result+'\n'=TrueC++ 比较解析的串行数据时出现问题,c++,arduino-uno,C++,Arduino Uno,我在让函数通过ifStatus==True语句执行时遇到问题,但我不确定原因。当我打印这些行时,它们似乎是匹配的。我还包括了一个串行输出的示例 b'RCSSTATUS\r\n'b'假\r\n'b'RCSSTATUS\r\n'b'假\r\n'b'RCSSTATUS\r\n'b'假\r\n com=command=DATASET='RCSSTATUS'+result+'\n'=True void parseCommand(String com){ String Action; String Sta
void parseCommand(String com){
String Action;
String Status;
Action = com.substring(0, com.indexOf(" "));
Status = com.substring(9, com.indexOf("e") + 1);
Serial.println(Action);
if(Action == "RCSSTATUS")
{Serial.println(Status);
if(Status == "True"){
digitalWrite(5, HIGH);
digitalWrite(4, LOW);
}
if(Status == "False"){
digitalWrite(6, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
}}}
我想出来了。我的输出字符串在行首有一个空格。将ifStatus==真更改为ifStatus==真能否请您更新问题以包含com的实际值?代码将使用com进行更新,com实际上是从RCSSTATUS真串行输入解析的