求助定时的问题-Arduino中文社区 - Powered by Discuz! Archiver

lh5263872 发表于 2020-7-11 10:26

求助定时的问题

本帖最后由 lh5263872 于 2020-7-12 21:00 编辑

我也搞了个电力监测,调试了好久,其它都没问题了,现在就是定时保存有问题。

但是测试的时候,把23:59改成就近的时间测试也无数次都没有问题,能正常存储。

求大佬帮忙,定时的代码是不是不该这么写。Blinker.minute() 这个是获取的服务器上的时间还是本地的啊




void lishishuju() {
if (Blinker.hour() == 23) { //当23:59时,存储当前总电能到powers.today
    if (Blinker.minute() == 59) {
      loadData();
      if (save_time == 0) {
      powers.yesterday = powers.today;
      saveData();
      BLINKER_LOG("saved1");
      Blinker.delay(500);
      powers.today = energy1;
      saveData();
      BLINKER_LOG("saved2");
      save_time = millis();
      }
    }
    if (millis() - save_time > 70000) { //延时70秒后才能再次运行
      save_time = 0;
    }
}
if (Blinker.mday() == 1) { //每月1日00:00存储一次数据
    if (Blinker.hour() == 0) {
      if (Blinker.minute() == 1) {
      loadData();
      if (month_time == 0) {
          powers.lastm = powers.thism;
          BLINKER_LOG("saved3");
          saveData();
          Blinker.delay(500);
          powers.thism = energy1;
          BLINKER_LOG("saved4");
          saveData();
          month_time = millis();
      }
      }
      if (millis() - month_time > 70000) { //延时70秒后才能再次运行每月存储数据
      month_time = 0;
      }
    }
}
}


奈何col 发表于 2020-7-11 14:56

blinker app自带的定时功能,不需要添加额外的代码

lh5263872 发表于 2020-7-11 18:46

奈何col 发表于 2020-7-11 14:56
blinker app自带的定时功能,不需要添加额外的代码

自带的定时不能定时月份,而且需要添加按钮

lh5263872 发表于 2020-7-11 19:01

奈何col 发表于 2020-7-11 14:56
blinker app自带的定时功能,不需要添加额外的代码

研究了下,懂了怎么设置自带的定时,
但是不能每月一次,只能设置每天,每月还是要加一个判断

奈何col 发表于 2020-7-12 15:13

lh5263872 发表于 2020-7-11 19:01
研究了下,懂了怎么设置自带的定时,
但是不能每月一次,只能设置每天,每月还是要加一个判断 ...

默认的暂时不支持按月设置,以后考虑加上
页: [1]
查看完整版本: 求助定时的问题