如何解决Arduino 中的字符串比较
此代码要求用户提供颜色(红色、绿色或黄色)并打开 LED。
但是由于某种原因,它不起作用。即使我输入了正确的值(红色、黄色或绿色),所有的 confitions 都被证明是错误的
我不知道这段代码不起作用的原因是什么...
enter code here
void loop() {
// put your main code here,to run repeatedly:
Serial.println(Msg1);
while(Serial.available()==0){}
Val=Serial.readString();
if (Val=="red") {
digitalWrite(redLed,HIGH);
digitalWrite(greenLed,LOW);
digitalWrite(yLed,LOW);
} else if (Val=="green"){
digitalWrite(redLed,LOW);
digitalWrite(greenLed,HIGH);
digitalWrite(yLed,LOW);
} else if (Val=="yellow") {
digitalWrite(redLed,HIGH);
}
}
解决方法
在 readString 之后添加 Val.trim() 将删除空格,您的程序将按预期运行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。