Просмотров: 8040 | Дата изменения: 29.04.2013г. |
Изначально эти часы-таймер предназначались для управления освещением и нагревом воды в аквариуме.

Потом было решено добавить возможность управления ими из сети "Умного дома".
Вот одно из решений подключения к сети RS485 "Умного дома" (Исправить подключение ADM485 к PIC16F628 согласно схеме выше!):

На выходах регистра DD2 появляются логические единицы в зависимости от срабатываний таймеров.
После включения устройства выводится текущее время и есть ли нагрев (значек).
При нажатии на кнопку "Select" таймер переходит в режим редактирования и ее последующие нажатия переводят на редактирование очередного параметра. Кнопка "Step" переход на очередное значение. Кнопка "+ / Temperature" - увеличение редактируемого значения.
Если находимся в режиме редактирования и на кнопки не нажимаем в течение некоторого времени, то таймер выходит из этого режима.
Если нажать на кнопку "+ / Temperature" то будет выведена измеренная температура.
В прошивке уже есть данные по содержимому EEPROM для включения света в аквариуме. При необходимости можете вручную в программаторе сделать исправления или воспользоваться плагином управления устройствами сети "Умного дома" SmartHome.dlv для программы vTray. Второй вариант легче.
Содержимое EEPROM (адрес - значение):
0 - номер этого устройства, начиная с 1. У каждого устройства свой уникальный номер.
1 - значение для отсчета 1сек (250)
2 - значение для коррекции счетчика секунд раз в сутки
3 - Температура включения нагрева (если меньше этой цифры)
4 - Температура включения нагрева биты: 0 = 0,5С, 7 = отриц.температура
5 - Часы1 или FF если таймер выключен
6 - Минуты1
7 - Биты реле (как у регистра на схеме)
8 - Часы2
9 - Минуты2
10 - Биты реле
и так далее по 3 байта на таймер. Всего 20 таймеров