Arduino在开关情况下循环,直到再次按下按钮。
创始人
2024-09-12 23:01:07
0

以下是一个使用Arduino的代码示例,实现在开关情况下循环,直到再次按下按钮:

const int buttonPin = 2; // 按钮连接到数字引脚2
const int ledPin = 13; // LED连接到数字引脚13

int buttonState = HIGH; // 按钮状态,默认为高电平
int lastButtonState = HIGH; // 上一次按钮状态,默认为高电平

void setup() {
  pinMode(buttonPin, INPUT_PULLUP); // 设置按钮引脚为上拉输入模式
  pinMode(ledPin, OUTPUT); // 设置LED引脚为输出模式
}

void loop() {
  buttonState = digitalRead(buttonPin); // 读取按钮引脚的状态

  // 检测按钮状态是否由高电平变为低电平
  if (buttonState == LOW && lastButtonState == HIGH) {
    digitalWrite(ledPin, !digitalRead(ledPin)); // 切换LED状态
  }

  lastButtonState = buttonState; // 更新上一次按钮状态

  delay(50); // 延迟一段时间,避免过快重复检测按钮状态
}

这个示例中,我们首先设置了两个常量,buttonPin表示按钮连接的数字引脚,ledPin表示LED连接的数字引脚。然后,在setup()函数里,我们将按钮引脚设置为上拉输入模式,将LED引脚设置为输出模式。

loop()函数里,我们通过digitalRead()函数读取按钮引脚的状态,并将其存储在buttonState变量中。然后,我们检测按钮状态是否由高电平变为低电平,如果是,则切换LED的状态,即通过digitalRead()函数读取LED引脚的状态,并使用!运算符取反,再通过digitalWrite()函数将新的状态写入LED引脚。

最后,我们更新lastButtonState变量为当前按钮状态,并通过delay()函数延迟一段时间,避免过快重复检测按钮状态。这样,当按钮按下后,LED的状态会切换一次,然后会在再次按下按钮之前一直保持不变。

相关内容

热门资讯

原来有透视"wepo... 您好:wepoker有挂吗透视知乎这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现...
正品透视"wepok... 正品透视"wepoker辅助插件"开挂(透视)辅助安装(今日头条必赢方法)是一款可以让一直输的玩家,...
传授透视"wepok... >>>您好:,软件加微信【添加136704302】确实是有挂的,很多玩家在这款游戏中打牌都会发现很多...
关于透视"微乐扑克记... 您好:微乐扑克记牌器怎么用的软件,软件加客服确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的...
正版透视"wepok... 正版透视"wepoker发牌算法"开挂(透视)辅助平台(重大推荐wepoke教程)是一款可以让一直输...
曝光透视"微乐扑克辅... 微乐扑克辅助器下载是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我...
必看透视"微扑克辅助... 无需打开直接搜索加微信客服(136704302)咨询了解微扑克辅助辅助器目前(微信:13670430...
详细透视"wepok... 详细透视"wepoker透视脚本连接"开挂(透视)辅助器(大家学习交流微扑克教程)是一款可以让一直输...
分析透视"WPK透视... 您好:WPK透视挂怎么用这款游戏是可以开挂的,软件加【添加微信客服136704302】确实是有挂的,...
关于透视"WePoK... 关于透视"WePoKer有没有透视软件挂"开挂(透视)辅助器(玩家必备教程靠谱教程)是一款可以让一直...