РадиоКот :: Часы на Atmega8, DS3231, термометром и дист.управлением
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Бытовая техника >

Теги статьи: ЧасыТермометрПульт дистанционного управления ПДУДобавить тег

Часы на Atmega8, DS3231, термометром и дист.управлением

Автор: U.Z
Опубликовано 10.04.2012
Создано при помощи КотоРед.

Проект часов на Atmega8 и DS3231 с термометром на DS18B20 и дистанционным управлением.

Схема:


Индикация - на 4-разрядном индикаторе (на разъемах ХР6-ХР9) с управлением от ULN2803, что позволяет подключить индикаторы любого размера с питанием сегментов до 50В 500мА.

Автоматическое управление яркостью с использованием внешнего фоторезистора, подключенного к разъему ХР4 (напр. СФ2-5).

Управление - от 3х локальных кнопок или пультом дист.управления (применен Sony RM887).

Датчик температуры - внешний DS18B20 (на разъеме ХР2), или внутренний в DS3231.

Применение точных часов DS3231 позволило отказаться от еженедельной коррекции, точность хода - ±15сек/месяц.

Работа происходит в 4х режимах:

  1. Нормальный. Поочередная индикация часов/минут, даты/месяца, температуры (если подключен DS18B20 или разрешено использование внутреннего термометра DS3231 (параметр конфигурации №1 равен 1). Период чередования (10сек по умолч.) задается параметром №0. Если кнопка “+“ нажата дольше 2сек, на индикаторе отображается текущая температура с точностью 0.1˚С. Если кнопка “-“ нажата дольше 2сек, на индикаторе отображаются минуты/секунды;

  2. Натройка часов. В этом режиме редактируются текущие часы/минуты, дата/месяц, год. Для выбора параметра кратковременно нажмите “Set“ на клавиатуре или “Menu left“/“Menu right“ на пульте. Выбранный параметр начнет мигать. Для установки параметра нажмите “+“/“-“ на клавиатуре или “Menu up“/“Menu down“ на пульте. Если кнопки не нажимались дольше 30сек, управление возвращается в нормальный режим. Для коррекции времени до ближайшего часа нажмите одновременно “+“ и “-“ на клавиатуре или левую кнопку на пульте (рис.1):



3. Индикация 4-разрідного номера (цена и т.д). Для перехода в этот режим нажмите и удерживайте кнопку “Set“ на клавиатуре или правую кнопку на пульте (“Menu“ - рис.2). Выбор цифры – кнопка “Set“ на клавиатуре или “Menu left“/“Menu right“ на пульте, ввод цифры - кнопки “+“/“-“ на клавиатуре или “Menu up“/“Menu down“ на пульте, выход в нормальный режим – длительное нажатие “Set“ на клавиатуре или “Menu“ на пульте. Если DS3231 не впаян на плате, система работает только в этом режиме.



4.Настройка параметров конфигурации. Позволяет настроить дополнительные параметры. Для перехода в этот режим нажмите одновременно кнопки “+“ и “Set“, или центральную кнопку на пульте (рис.3). первая цифра отображает номер параметра (0..6), остальные – значение. Выбор параметра - кнопка “Set“ на клавиатуре или “Menu left“/“Menu right“ на пульте, изменение параметра - кнопки “+“/“-“ на клавиатуре или “Menu up“/“Menu down“ на пульте, возврат в нормальный режим – короткое нажатие кнопок “+“ и “Set“ или центральной кнопки  на пульте:



Список параметров:

Name

Min

Max

Value

Units

0

Период смены параметров

1

999

10

сек

1

=1 для использования внутреннего термометра DS3231 если DS18B20 не подключен

0

1

0

2

Коррекция температуры

-9.9

9.9

0

0.1˚С

3

=1 для автоперехода на зимнее/летнее время

0

1

0

4

Минимальное значение ШИМа яркости

0

255

10

5

Максимальное значение ШИМа яркости

0

255

250

  Функции сегментов "H": 1й разряд - горизонтальная линия в знаке "-" sign, 2й - верт.линия в знаке "+", 3й - разделитель час:мин, 4й - разделитель дата.месяц.

    Фьюзы ATMega8: 0x91 high, 0xA4 low, кварц 8M, программирование - из командной строки с помощью Avrdude через прогр. AVR910 на скорости 115kbod (команда "make progf" для фьюзов, "make prog" для flash).


Файлы:
Проект (схема в KiCAD, исходники на AVR-GCC, прошивка)


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

17 28 6
2 0 2

Эти статьи вам тоже могут пригодиться: