請幫我瞎我對Arduino的串口命令行不工作,我不知道爲什麼
void commandline() {
if (Serial.available() > 0)
{
String command = Serial.readStringUntil(' ');
String commandvar = Serial.readString();
Serial.print(command);
Serial.print(" | ");
Serial.println(commandvar);
if (command == "fans" || command == "Fans" || command == "FANS")
{
Serial.println("Command Recognized");
if (commandvar == "on" || commandvar == "On" || commandvar == "ON")
{
Serial.println(" Fans are now ON");
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
}
else if (commandvar == "off" || commandvar == "Off" || commandvar == "OFF")
{
Serial.println(" Fans are now OFF");
digitalWrite(2, LOW);
digitalWrite(3, LOW);
}
else
{
Serial.println("commandvar isn't valid");
}
}
當我看到串行控制檯和發送「球迷」,控制檯吐奶出
fans | on
Command Recognized
commandvar isn't valid
任何幫助將是非常讚賞
=========================
額外的資訊
1)我打電話從環命令行()()每10毫秒
2)風機命令不是唯一的命令,我有這只是我必須把它們轉換新工作命令變量我創建
3)我使用Arduino的烏諾版本3
常識會說,如果你得到一個無法識別的命令,你可能想輸出它,所以你可以看到你認爲你發送的是你的代碼認爲它收到了什麼,不是嗎?學習使用簡單技術進行調試是一項寶貴的技巧,您應該努力學習。 –
你確定這裏有任何C++嗎? – Gerhardh