在我的湿度传感器低于 60% 后需要帮助在我的 arduino 上创建一个 5 分钟的计时器

Need help creating a 5 minute timer on my arduino arfter my humidity sensor goes below 60%

我正在制作一种设备,它可以在我淋浴时自动打开我的浴室风扇。当湿度回到 60% 以下时,我需要帮助设置一个 5 分钟的计时器。我不知道该怎么做,所以我会感谢所有能得到的帮助,谢谢。

//Main program loop.

void loop( )
{
  float temperature;
  float humidity;

  if( measure_environment( &temperature, &humidity ) == true )
  {
    if (humidity >= 60){
    digitalWrite(pinOut, HIGH);
    }
  else {
    digitalWrite(pinOut, LOW);
     }
    delay(500);

  } 
  }

我建议您使用一个布尔值来跟踪淋浴是否刚刚启动,例如:

boolean shower = false;

.... code

if (humidity >= 60) {
    digitalWrite(pinOut, HIGH);
    shower = true;
} else {
    if (shower) {
        delay(1000 * 60 * 5);
        shower = false;
    }
    digitalWrite(pinOut, LOW);
}

.... code

现在,每次打开淋浴器时,布尔淋浴器都为真。当湿度再次降至 60 以下时,布尔值仍然为真,嵌套在 else 语句中的 if 语句被触发,导致五分钟的延迟,其中 pinOut 仍然设置为高电平。之后,布尔值再次被赋值为 false 并且风扇被关闭。