单词命令
本课属于 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");
}挑战
简单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" 或其他内容执行相应操作
}
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
输入中的所有课
自己练习: Arduino 在线编辑器