Вычислить время наступления события
- Войдите на сайт для отправки комментариев
Чт, 10/03/2016 - 16:57
Добрый день!
Прошу прощения за возможно глупый вопрос, но только начинаю осваивать программирование:
Есть необходимость отключать нагрузку, скажем, через 4 часа и есть RTC 3231 с которого считывается текущее время, примерно так
t= rtc.getTime() currentHour = t.hours
Теперь мне к текущему часу надо прибавить 4, чтобы получить час выключения, однако переменная currentHour всегда обновляется, а значит время требуемое время отключения offHour никогда не настанет.
offHour = currentHour + 4
Соответственно, вопрос: как вычислять время отключения. Допускаю, что возможно необходимо использовать иные методы вычисления, а не прибавление к текущему времени . Заранее спасибо, если подскажите какие.
Читать
Соттветственно, у вас должно получиться что-то вроде
Если(включили нагрузку){посчитать когда выключать}
Заведите переменную onHour и держите в ней час включения, тогда offHour = onHour + 4, а затем сравнивайте offHour с currentHour.
Не забудьте проверять offHour "на переполнение", ведь в случае, например, onHour = 22 будет явная бессмыслица.
Дело в том, что onHour может наступить в любой момент времени и не привязан к какому-либо часу. Значит в моем распоряжении только сurrentHour и мне нужно как-то оперировать с ним, насколько я понимаю.
Если включили в 8, то выключить в 12
Проблема "зафиксировать" эти 8...как то-так.
Ну так не обновляйте offHour, пока не наступило время отключения.