в на базі мікроконтролерів сімейства MSP430. Для налагодження в реальному часі був також використаний відладочний комплект eZ430-F2013 [4]. Програма написана на мові С.
4. Розробка алгоритму програми мікроконтролера
Алгоритм програми мікроконтролера складається з двох основних частин:
основної програми і перериває програми таймера.
1. Основна програма (MAIN) здійснює початкову ініціалізацію і переводить процесор мікроконтролера в сплячий режим, при якому споживання мінімально. Сплячий режим переривається запитом переривання від внутрішнього таймера, що надходить через кожні 2 мс, підпрограма обслуговування якого і реалізує всі функції пристрою.
2. Перериває програми таймера (Int_Timer_A) реалізує наступні функції:
· динамічна індикація (підпрограма Display викликається через 2мс);
· опитування клавіатури з захистом від брязкоту (підпрограма KeyBScan викликається через 2мс);
· введення / редагування часу таймера (підпрограма Servis_Key викликається через 2мс);
· відлік таймера (підпрограма Timer викликається через 1 сек);
· видача звукового сигналу протягом 5 секунд, при закінчення часу таймера (підпрограма Beep викликається через 1 сек).
Р-схеми програм наведено на рис. 4.
Рис.4. Таймер на мікроконтролері MSP430.Р-схеми
Література
1. Сімейство мікроконтролерів MSP430x2xx. Архітектура, програмування, розробка додатків / пер. з англ. Евстіфеева А.В.- М.: Додека_XXI, 2010. - 544 с.: Ил.- (Серія «Світова електроніка»).
. # «Justify">. # «Justify">. # «Justify"> мікроконтролерний таймер дисплей програма
Додаток
Лістинг програми
/ / -------------------------------------------------------------------
/ *
Файл:
Автор: Єгорова Катерина Геннадіївна
Група: РТЕ - 11-08
Дата: 25.02.2012
Призначення: Таймер на мікроконтролері MSP430F2013
* /
/ / -------------------------------------------------------------------
/ / -------------------- Бібліотечні файли ---------------------------
# include
/ / ------------------------- Скорочення ------------------------------
# define u_char unsigned char
# define u_int unsigned int
/ / ----------- Константи, використовувані в різних програмах -----------
# define NOT_DEFINE 0x99
# define KEY_MODE 0x01
# define KEY_UP 0x02
# define BOUNCE_TIME 20
# define TMR_2000MKS 1995
# define SW_Load 0x04
# define Power_On 0x10
# define fl_half_sec 0x01
# define blink_bit 0x02