Menu
CoddyTech

单词命令

本课属于 Coddy Arduino 学习旅程的“输入”单元。第 16 课,共 22 课。

每条命令只用一个字符,很快就不够用了。用单词会更清楚:on、off。一个单词由多个字符组成,所以要一次读取整行。一段文本是一个 String,Serial.readStringUntil() 会一直读取字符,直到遇到你指定的字符,也就是换行符,然后将其丢弃:

if (Serial.available() > 0) {
  String command = Serial.readStringUntil('\n');
  if (command == "on") {
    // ...
  }
}

文本要用双引号括起来,例如 "on";单个字符要用单引号括起来,例如 'o'。

要从多个命令中选择一个,可以用 else if 把条件串起来。开发板会按顺序检查它们,只运行第一个结果为真的条件分支;最后的 else 会处理其他所有情况:

if (command == "on") {
  // ...
} else if (command == "off") {
  // ...
} else {
  Serial.println("Unknown command");
}
challenge icon

挑战

简单

LED 接在引脚 13 上。你可以在串口监视器中输入文字来控制它:

  • 将整行内容读入 String
  • on 会点亮 LED,off 会熄灭 LED
  • 输入其他文字会打印 Unknown command

按下运行,在串口监视器中发送 on、off 或你自己输入的文字,然后按检查。

亲手试试

const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  if (Serial.available() > 0) {
    // 读取这一行,然后根据 "on"、"off" 或其他内容执行相应操作
  }
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

输入中的所有课

自己练习: Arduino 在线编辑器