统计按钮按下次数
本课属于 Coddy Arduino 学习旅程的“输入”单元。第 5 课,共 22 课。
上一课中的边沿可以触发每次按下时只发生一次的操作。这里,它会让计数器加 1,并使用了 Counting Up 中的 ++:
int presses = 0;
void loop() {
int reading = digitalRead(2);
if (reading == LOW && lastReading == HIGH) {
presses++;
Serial.println(presses);
}
lastReading = reading;
}presses 和 lastReading 一样,放在 setup() 上方,因此它的值会在多次运行 loop() 之间保留下来。
打印语句在 if 中,所以只有计数变化时才会显示数字:1、2、3。如果把它放在 if 外面,就会每秒打印数千次相同的计数。
挑战
简单按钮连接在引脚 2(INPUT_PULLUP)。统计按下次数:
- 将计数保存在
presses中,并在setup()上方声明 - 按钮按下时,计数加 1 并输出计数
点击 运行,按几次按钮并观察串口监视器,然后点击 检查。
亲手试试
const int buttonPin = 2;
int lastReading = HIGH;
void setup() {
pinMode(buttonPin, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int reading = digitalRead(buttonPin);
// 按钮按下时,计数并打印次数
lastReading = reading;
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
输入中的所有课
自己练习: Arduino 在线编辑器