我的代码有问题,昨天它对我来说很好,但是当我改变了一件事它不起作用时,CTRL-Z和之前的代码也不再起作用了。
String readString = "";
int Rand = 0;
String Random = "";
void setup() {
Serial.begin(9600);
}
void loop()
{
while(!Serial.available());
while (Serial.available() > 0) {
delay(3);
char c = Serial.read();
readString += c;
}
Serial.print(readString);
if(readString == "Hi"){
Rand = random(5100,9999);
String Random = String(((((Rand - 5) * 2) - 36) / 2 - 3) * 2);
Serial.print(Random);
}
readString = "";
}
这是我的代码,对我来说不起作用的是每当我在串口中输入一个命令时,它就会被Serial.print(readString)显示出来;但如果我输入“Hi”(不带引号),if(readString ==“Hi”)似乎不起作用。
有没有人知道如何解决if语句识别你发送的嗨?
答案 0 :(得分:0)
我的一位朋友告诉了答案。他说如果你有一个字符串就会有一个新的行字符,那就是tou必须在if语句之前调整变量,执行readString.trim();.
答案 1 :(得分:0)
我发现了类似你的错误。你可以试试这个;
if (stringOne.equals(stringTwo)) { //to do
stringOne是“Hi”,strintTwo是readString。
我希望能为您解决这个问题。