Виберіть свою мову

Пропоноване пристрій буде корисним на будь-якій кухні. Таймер дозволить не стежити за часом приготування їжі, а просигналізує про момент її готовності. Пристрій містить в собі 5 незалежних таймерів, які можна встановлювати і редагувати в довільні моменти часу.

Кожен таймер може встановлюватися на час від 1 до 99 хвилин. На світлодіодному семисегментному індикаторі HL1 відображається час, що залишився до спрацьовування звукового сигналу. Світлодіоди HL2-HL6 служать для позначення поточного таймера, значення якого виводиться на індикатор. У якості звукового оповещателя використаний зумер. Таймер має функцію пам'яті 5 останніх унікальних (одноразових) значень. Це дозволить набагато швидше виробляти набір часто використовуваних часів.

В основному режимі кнопки "+" і "-" використовуються для вибору поточного таймера. Натисканням на кнопку "Установка" ми входимо в режим установки вибраного таймера. Він характеризується миготінням відповідного світлодіода з частотою близько 1 Гц. У цьому режимі за допомогою кнопок "+" і "-" проводиться набір встановленого часу. Кожне натискання змінює встановлюється час на 1 хвилину. При одночасному натисканні на кнопки "+" або "-" і кнопки "Пам'ять/X10" зміна встановлюється значення відбувається на 10 хвилин. Кнопка "Пам'ять/X10" також служить для швидкого отримання збережених значень з пам'яті EEPROM мікроконтролера. Вона складається з 5 осередків та організована за принципом стека, де першим витягується останнім збережене значення. Слід зазначити, що перше натискання на цю кнопку завжди дає 0. Це зроблено для можливості швидкого обнулення таймера. Запис в пам'ять відбувається автоматично при виході з режиму установки. Якщо встановлюється час вже є в пам'яті, то запис не здійснюється. Вихід з режиму установки здійснюється натисканням на кнопку "Установка" і одночасно почнеться відлік встановленого значення. Якщо ми передумали запускати таймер, то при виході з режиму установки необхідно встановити значення 0.

Кожен таймер працює незалежно, і в будь-який момент часу його значення можна змінити. Після закінчення встановленого часу запрацює звукова сигналізація у вигляді послідовності переривчастих звуків. Також у цей момент буде блимати відповідає номеру таймера світлодіод. Сигналізація буде працювати до тих пір, поки не буде натиснута одна з кнопок "Пам'ять/X10", "+" або "-".

У проекті кухонного таймера використані семисегментные індикатори з загальним анодом. Автор використав здвоєний типу A-522G. Транзистори VT1-VT3 малопотужні кремнієві з n-p-n структурою, наприклад КТ3102. Зумер типу XC1203XF на напругу 3 або аналогічний.

Так як програма мікроконтролера використовує значення з EEPROM, то для їх збереження слід, при установці фьюзов, включити BOD детектор на 4.3 Ст. Тактова частота внутрішнього RC-генератора становить 8 МГц.

Для приготування страв на кухні не вимагається високої точності, тому висновки мікроконтролера для підключення кварцу були пожертвувані на користь функціональності. Невисока точність і стабільність формуються тимчасових інтервалів обумовлена використанням внутрішнього RC-генератора. Помилка приблизно може становити 1-2 хвилини на 1 годину при номінальному значенні рахункового регістра таймера 1, яка дорівнює TCNT1L=0xEE, TCNT1H=0x85. Однак точність можна підвищити. Для цього потрібно змінити ці значення. Завантаження значень рахункового регістра здійснюється в обробника переривання від таймера 1, в якому і відбувається відлік часу. Величина зміни обчислюється виходячи з реального відхилення. Наприклад, якщо час відстає на 1 хвилину 40 секунд при температурі близько 20 градусів і напрузі живлення мікроконтролера 5 вольт, то значення рахункового регістра таймера буде одно TCNT1L=0x83, TCNT1H=0x82.

Скачати исходник, прошивку і проект в P-Cad

Автор: Антон Гаркуша, gam-raingers [собака] mail.ru; Публікація: www.cxem.net