Menu
CoddyTech

返回值

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

函数也可以返回一个值。用该值的类型替换 void,并以 return 和这个值结束:

int readPercent() {
  int reading = analogRead(A0);
  return map(reading, 0, 1023, 0, 100);
}

调用函数时会得到这个值,就像调用 analogRead() 一样。你可以存储、打印或比较它:

int percent = readPercent();
if (readPercent() > 50) {
  // ...
}

return 也会立即结束函数:它后面的代码行不会运行。在函数内部创建的变量,比如这里的 reading,只在函数运行期间存在;返回值就是结果传出函数的方式。

challenge icon

挑战

简单

旋钮连接到 A0,LED 连接到引脚 13:

  • 编写 int readPercent(),读取 A0,并将其映射到 0 到 100 后返回
  • 在 loop() 中,将 readPercent() 存储到一个变量中并打印出来
  • 当百分比高于 50 时点亮 LED,否则将其熄灭;等待 100 ms

按“运行”,转动旋钮,然后按“检查”。

亲手试试

const int ledPin = 13;

// 在这里编写 int readPercent()

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

void loop() {
  // int percent = readPercent();
  // 输出它,超过 50 时点亮 LED,等待 100 ms
}
quiz icon自我测试

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

输入中的所有课

自己练习: Arduino 在线编辑器