Часовник, будилник, термометър (ATmega8)-2
Автор: Soir. Публикувано в Часовник

- часовник с цифрова корекция на точността, календар - будилник с настройка по ден от седмицата. – два термометъра. – индикация на 8-разрядния седемсегментен индикатор. Промяна на анимирания дисплей. – автоматично регулиране на яркостта на индикатора.
Описание на часовника.
1. Функции.
– часове, 24-часов формат на показване на времето, часове-минути-секунди. Кратък звуков сигнал („кукувица“) звучи на всеки час, ако е разрешено в настройките. Сигналът не работи в нощен режим.
– календар, формат на дисплея ДД-ММ-ГГ.
– цифрова корекция на точността. Възможна е ежедневна корекция ±25 сек. Зададената стойност от 1 час 0 минути 30 секунди ще бъде добавена/извадена от текущото време.
- аларма. В зададеното време се чуват кратки двойни звукови сигнали за една минута. Можете да изключите звука предварително, като натиснете някой от бутоните. Ако звукът не е заглушен, след 5 минути алармата ще се включи отново за една минута. Само 5 повторения, след което звукът се изключва до изключване на следващата аларма. Когато алармата е активирана, се показва точка в най-малката цифра, когато се показва часът. Изберете дните от седмицата, за да работи алармата.
- термометър, два сензора. Диапазонът на измерените температури е -55.0 ÷ 125.0 o C.
- Персонализирана анимация на променящите се показания.
– използване на енергонезависимата памет на микроконтролера за запазване на настройките при изключване на захранването.
– в основен режим бутонSET превключва ръчно показваната информация.
– превключване между дневен и нощен режим на яркост в определено време.
– автоматична настройка на яркостта на индикатора вв зависимост от осветлението.
2. Настройка.
2.1. Когато захранването е включено, часовникът е в основен режим.
2.2. Натискането на бутонаМЕНЮ влиза в режим на настройки и избира група от параметри за настройка. В рамките на група изборът на параметъра за настройка се извършва с бутонSET. От своя страна, налични за инсталиране:
ГрупаCLOC :
– секунди (нулиране чрез натискане на бутоните ПЛЮС или МИНУС);
ГрупаdAtE :
ГрупаКор :
ГрупаALAr :
– време на работа на алармата, в старшия бит символаA ;
– глобално активиране на будилникаAL On - будилникът е активен,AL OFF - работата на будилника е забранена;
– активиране на будилника за дните от седмицата. На индикатора "Вкл. ", ако будилникът е активиран, "ИЗКЛ. ", ако е дезактивиран.
ГрупаdiSP :
– време за индикация на температурата на датчик „Уличен“. Знаците "tУ " в цифри от висок ред. Диапазон на настройка 0÷99 сек; Ако е зададено 0, то няма да се показва на индикаторите.
– време за индикация на температурата на датчика "Къща". Знаците от висок ред са "td ". Диапазон на настройка 0÷99 сек; Ако е зададено 0, то няма да се показва на индикаторите.
– време на индикация на текущото време. Знаците от висок ред са "tc ". Диапазон на настройка 0÷99 сек; Ако е зададено 0, то няма да се показва на индикаторите.
– индикация за дата час. Знаците от висок ред са "tdt ". Диапазон на настройка 0÷99 сек. Ако е зададено 0, то няма да се показва на индикаторите.
– избор на скорост на анимацията. Най-значимият бит е символът "SP ". Диапазон на настройка 0÷99. Една единица съответства на приблизително 2 ms, колкото по-висока е стойността, толкова по-бавна е анимацията.
ГрупаLiGH :
-максимална яркост на индикатора в дневен режим. Във висок редDAУ. Диапазон на настройка 0÷99;
– време на включване на дневния режим. Най-значимият бит е знакътd.
– максимална яркост на индикатора в нощен режим. Във висок редniGH. Диапазон на настройка 0÷99;
– време за активиране на нощен режим. Най-значимият бит е знакътn.
ГрупаЗвук :
- включете режима "кукувица". Знацитеcuc в горните цифри, ако почасовият звуков сигнал е активиран, след това в долните цифриВключен, ако е деактивиран -ИЗКЛ.
2.3. Параметърът за настройка мига.
2.4. При задържане на бутонитеПЛЮС /МИНУС параметърът се задава бързо.
3. Бележки.
1. При настройка на параметрите на яркостта, информацията на индикатора се показва с избраната стойност на яркостта.
2. Необходимо е да се измери скоростта на анимацията и времето на показване на информацията. Ако е избрана бавна анимация и кратко време за показване, тогава може да се окаже, че информацията няма време да се актуализира напълно преди следващата смяна.
3. Ако времето за индикация за всички параметри е настроено на 0, тогава времето без анимация ще се показва на индикатора.
4. През деня натискането на бутоните се съобщава с кратък сигнал.

4. Характеристики на схемата.
1. Температурният сензор може да работи и по 2-проводна схема на свързване. Ако планирате да измервате температурата в помещението, където е монтиран часовникът, тогава сензорът все пак трябва да бъде изваден от кутията на часовника.
2. Високочестотният високоговорител BUZ1 трябва да има вграден генератор. В зависимост от консумацията на ток може да се наложи инсталиране на усилвател (транзисторен ключ).
3. Индикатор с общ катод. Ако яркостта не е достатъчна, тогава трябваинсталирайте допълнителни ключове (в архива в папката Clock_ULN2803_v4).
4. Когато мигате MK, трябва да инсталирате FUSE да работи от вътрешния часовников генератор с честота 8 MHz.
5. Проектът (това по същество е схема) не показва щифтовете на захранването на микросхемите.
6. При производството променливият резистор RV1 трябва да бъде заменен с фоторезистор. Резисторът R18 се избира според най-оптималната промяна в яркостта на индикатора при промяна на осветеността.
В архива има две версии на фърмуера (със и без ключове в схеми с общ катод), проект в Proteus, пример за инсталиране на FUSE за PONYPROG, описание.
За да обсъдите статията, създадете тема във форума.
Видео на програмата, от потребителяwolf2000.