返回值
本课属于 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,只在函数运行期间存在;返回值就是结果传出函数的方式。
挑战
简单旋钮连接到 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
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
输入中的所有课
自己练习: Arduino 在线编辑器