ZBLOG

void anjian() { // 检查按钮是否被按下 // 按钮连接到GND,所以按下时buttonState为LOW if (digitalRead(KEY) == LOW) { // 稍微延迟,以去抖动 delay(10); // 再次检查按钮状态,确保它是真的被按下 if (digitalRead(KEY) == LOW) { digitalWrite(STBY,HIGH); ...

根据你提供的代码,我进行了一些修正。请参考下方修正后的代码:

void anjian()
{   
  // 检查按钮是否被按下  
  // 按钮连接到GND,所以按下时buttonState为LOW  
  if (digitalRead(KEY) == LOW) {  
    // 稍微延迟,以去抖动  
    delay(10);  
    // 再次检查按钮状态,确保它是真的被按下  
    if (digitalRead(KEY) == LOW) 
    {
      digitalWrite(STBY,HIGH);
      delay(2800);
      digitalWrite(LED4,HIGH);
      delay(50);
      digitalWrite(LED4,LOW);
      delay(3800);
      digitalWrite(LED4,HIGH);
      delay(50);
      digitalWrite(LED4,LOW);
      delay(2800);
      digitalWrite(LED4,HIGH);
      delay(50);
      digitalWrite(LED4,LOW);
      delay(3800);
      Motor_Speed(speedc, speedc, 1, 1, 1 ,1); // 根据实际情况填写Motor_Speed函数参数
      digitalWrite(LED4,HIGH);
      
      // 延迟一段时间(380秒)
	  delay(380000);

	  Serial.println(counter); 

	  int state5 = digitalRead(KEY); // 读取引脚KEY的状态

	  Serial.print("State of KEY: ");
	  Serial.println(state5);
    }
  }
}

这个修正过的代码会在按钮按下时执行特定操作,并且输出按钮状态和计数器值。请注意,Motor_Speed函数需要根据实际情况进行填写。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=17298

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?