Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Обсуждение прикладной программы



Код прикладной программы часов реального времени приведен в двух ва­риантах в приложении А. В каждом примере есть подпрограмма инициации, основная ветвь, подпрограмма расчета временных показателей (часов, минут и секунд) и подпрограмма обработки прерывания, отслеживающая 1-секундные прерывания от таймера.

Подпрограмма инициации производит настройку модулей MSP430. Мо­дуль таймера настраивается на непрерывный счет от 0 до 32767 и формирова­ние прерывания при переполнении. Также подпрограмма производит установку необходимых параметров основного модуля синхронизации.

Основная ветвь - программа, выполняемая каждый раз после формиро­вания прерывания, и инициализирующая режим сна микроконтроллера. Даже тогда, когда вычислительное ядро переходит в режим ожидания, таймер все равно продолжает работать.

Подпрограмма обслуживания прерывания (interrupt service routine - ISR) таймера обрабатывает биты регистра состояния (status register- SR), которые записываются в стек до выполнения подпрограммы обслуживания прерыва­ния. Это позволяет вычислительному ядру находиться в активном режиме, а не в режиме сна, по выходу из подпрограммы обслуживания прерывания.

Подпрограмма расчета временных параметров выполняется каждый раз после 1-секундного прерывания таймера. Она пересчитывает значения секунд, минут и часов в двоично-десятичной форме. В описании встроенных перифе­рийных модулей микроконтроллеров семейства MSP430 можно найти более сложную подпрограмму, которая высчитывает и значения дней, месяцев и лет (учитывая и високосные годы).





Дата публикования: 2014-11-18; Прочитано: 280 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...