当前位置:首页Arduino > 正文

Arduino如何做到延时关灯

作者:野牛程序员:2023-08-18 20:24:40Arduino阅读 2918

要实现按下按键后延时一段时间再关灯的功能,可以使用以下的Arduino示例代码:

const int buttonPin = 2; // 按键引脚
const int ledPin = 13;   // LED引脚

int buttonState = 0;     // 按键状态
int ledState = LOW;      // LED状态
unsigned long lastPressTime = 0; // 上次按键按下的时间
const unsigned long delayTime = 5000; // 延时关闭时间(毫秒)

void setup() {
  pinMode(buttonPin, INPUT); // 将按键引脚设置为输入模式
  pinMode(ledPin, OUTPUT);   // 将LED引脚设置为输出模式
}

void loop() {
  buttonState = digitalRead(buttonPin); // 读取按键状态

  if (buttonState == HIGH) {
    if (millis() - lastPressTime >= delayTime) {
      // 如果按键按下且延时时间已过,则切换LED状态
      ledState = !ledState;
      digitalWrite(ledPin, ledState);
      lastPressTime = millis(); // 更新上次按键按下的时间
    }
  }
}

将这段代码上传到Arduino开发板上,然后连接一个按键到指定的按键引脚(这里是D2),以及一个LED到指定的LED引脚(这里是D13)。按下按键后,LED会在延时时间内保持点亮,然后自动熄灭。

在这个示例中,使用了lastPressTime变量来记录上次按键按下的时间。当按键按下时,检查当前时间与上次按键按下的时间之间的间隔是否大于等于delayTime,如果是,则切换LED状态。这样,LED会在按下按键后的一段时间内保持点亮,然后在延时时间后自动熄灭。请确保按键和LED引脚的设置与代码中的一致。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击