1

我正在写一个车库门开启器和监视器。

监视器通过另一个 Arduino over RF (315 MHz)接收门状态。下面的代码有效,但我觉得我不应该每次向服务器发出请求开门时都需要检查状态。有没有办法把代码拆分出来,让我每20秒检查一次门的状态,车库的开关是按需的?

这是代码: https ://github.com/dhysong/ArduinoGarageOpener/blob/master/src/GarageDoorOpener/GarageDoorOpener.ino

4

1 回答 1

2

基于这篇文章:http ://arduino.cc/forum/index.php/topic,5686.0.html

我能够为我的应用程序添加类似多线程的功能。源代码已更新以反映更改。

这是相关的部分:

boolean cycleCheck(unsigned long *lastMillis, unsigned int cycle) 
{
  unsigned long currentMillis = millis();
  if(currentMillis - *lastMillis >= cycle)
{
  *lastMillis = currentMillis;
  return true;
 }
else
  return false;
}

这是任何可能受益的人的 github 代码: https ://github.com/dhysong/ArduinoGarageOpener/blob/master/src/GarageDoorOpener/GarageDoorOpener.ino

于 2012-10-01T13:21:30.313 回答