运行多个计时器?

我有一个 nodemcu,正在尝试实现以下内容。 - 每 5 分钟向远程网站发送数据。 - 每一秒检查传感器

所以有 2 个功能:

   function checkSensors()
        print("检查传感器")
        -- 在这里处理一些内容
   end

   function sendData()
        print("发送数据")
        -- 在这里处理一些内容
   end

   tmr.alarm(0, 1000, 1, function() checkSensors() end )
   tmr.alarm(0, 300000, 1, function() sendData() end )

如果我注释掉第一个 tmr,那么每 5 分钟 sendData 函数将被调用。同样,注释掉第一个 tmr,sendData 函数每秒都会被调用。

然而,在两个计时器都启用时,只调用 sendData 函数。

如何使用两个计时器,或者我应该以另一种方式做到这一点。

点赞
用户2101267
用户2101267

tmr.alarm 的第一个参数是定时器的 ID。因为在这两个调用中你都使用了 0,所以它只是简单地两次重新配置了同一个定时器。如果你想要多个定时器,你需要为每一个传递不同的 ID。

有 7 个静态定时器( 0- 6),但它们正在逐渐消失。你可以使用 tmr.create 创建动态定时器。返回的 ID 可以传递给 tmr.alarm

2016-11-03 17:25:07