Зафиксировать время старта программы

Использование различных блоков часов
Ответить
Аватара пользователя
shvromyou
Рядовой
Сообщения: 44
Зарегистрирован: 28.03.2016{, 12:28}
Репутация: 3
Имя: Роман

Зафиксировать время старта программы

#1

Сообщение shvromyou » 08.11.2016{, 15:58}

Пытаюсь придумать "велосипед". DS3231.
Программу начинаю с кнопки Пуск. В это время:
1. В EEPROM фиксируется время старта.
2. Прошлая  наработка обнуляется.
3. Начинается учет времени со старта программы. В учете есть: ДД. ЧЧ. ММ.
В случае перезагрузки Ардуинки (отключения-включения электричества) программа сравнивает Реальное время с п. 1, получает разницу во времени и продолжает работать уже с новым учётным временем.
Пример:
1. 18:00 01.01.2016 старт.
2. 20:30 10.01.2016 откл. электроэнергии /время от старата 10д. 2ч. 30 мин./
3. 21:30 10.01.2016 вкл. электроэнергии /прога получает разницу между п.3 и п. 1 и записывает себе 10д. 3ч. 30мин. /
4. Продолжает работать и дальше считать прошедшее время со Старта от 10д. 3ч. 30мин.
Возможно ли такое? Возможно ли такое без сильного износа EEPROM?
Может ли кто накидать примерчик? Голова закипает, а толку нет. Учусь я ещё...

П.С.: просто нужно выполнение действий по дням / прим.: 2ой д - красный светодиод, 4ый д.- синий, 8ой д.- зелёный/
Последний раз редактировалось shvromyou 08.11.2016{, 16:04}, всего редактировалось 1 раз.

Аватара пользователя
Олег
Полковник
Сообщения: 1532
Зарегистрирован: 13.10.2015{, 16:47}
Репутация: 63
Контактная информация:

Зафиксировать время старта программы

#2

Сообщение Олег » 08.11.2016{, 17:21}

Записывайте в ЕЕПРОМ только при пропадании электричества, о том как это сделать было несколько тем.
 Хотя я бы просто УПС помощнее поставил. Что толку если он продолжит работу после того как яйца подмерзли.
Последний раз редактировалось Олег 08.11.2016{, 17:24}, всего редактировалось 1 раз.

Аватара пользователя
eugeneb
Лейтенант
Сообщения: 481
Зарегистрирован: 15.08.2016{, 11:20}
Репутация: 21
Откуда: Нижний Новгород
Имя: Евгений

Зафиксировать время старта программы

#3

Сообщение eugeneb » 08.11.2016{, 19:56}

Была похожая задача - чего-то набо было сохранять между включениями.

Там в часах есть несколько регистров... а, вот посмотрел -
с 07h до 0Dh (7 шт)

Это место для алармов. Вот я туда и писал. Это не EEPROM.
Держится на часовой батарейке. Ресурс на запись бесконечен.

Если алармы не нужны - то вот.

А если это инкубатор, то время старта можно и в EEPROM писать. Это же редко бывает, только при закладке яиц.
То есть не чаще чем раз-два в месяц. При ресурсе на запись
одной ячейки EEPROM 10000 раз, это же минимум пять тысяч
месяцев или 416 лет. Не о чем беспокоиться
Последний раз редактировалось eugeneb 08.11.2016{, 20:01}, всего редактировалось 1 раз.

Аватара пользователя
shvromyou
Рядовой
Сообщения: 44
Зарегистрирован: 28.03.2016{, 12:28}
Репутация: 3
Имя: Роман

Зафиксировать время старта программы

#4

Сообщение shvromyou » 09.11.2016{, 06:28}

Спасибо! Вопрос снят. 
Последний раз редактировалось shvromyou 09.11.2016{, 07:04}, всего редактировалось 1 раз.

Ответить

Вернуться в «Часы реального времени»