Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Лабораторная работа № 4. Вложенные таймеры






Лабораторная работа № 4

по дисциплине: Основы цифровой техники

(Основы микропроцессорной техники)

на тему: Вложенные таймеры

 

 

Выполнил: ст. гр. БЭк 13-3 Амангельдиев Д.

Проверила: Мустагулова Б.

 

Алматы, 2015

Лабораторная работа № 4. Вложенные таймеры

Цель работы: изучение способов создания задержек выполнения следующей инструкции, в соответствии с реализацией управляющего алгоритма. Например, такие задержки нужны в цикле АПВ, в реализации алгоритмов АЧР и т.д. Реализацию пауз между следующими друг за другом инструкциями можно осуществить с помощью таймеров на основе вложенных циклов или таймеров, реализованных в микроконтроллере как периферийные модули микроконтроллера: ТМR0, ТМR1 и ТМR2.

Изучите работу таймеров ТМR0, ТМR1 и ТМR2 и назначение регистра PCL по [11] и приложению Г, а также инструкции DECF и DECFSZ.

В МК PIC16F87x выполнение инструкции осуществляется за четыре такта. В зависимости от времени выполнения одного такта при циклическом исполнении набора инструкций может быть создана временная задержка. В 8-разрядный регистр, в который вносится константа, определяющая число циклов, может быть записано максимально число 255. Если применяются вложенные циклы, то каждый последующий внешний цикл предполагает выполнение внутреннего цикла и, следовательно, существенного увеличения времени работы таймера и создания паузы перед выполнением следующей инструкции в программе.

Если тактовая частота генератора равна 20 МГц, то время выполнения одного такта равно 0, 05 мкс. Время выполнения машинного цикла, состоящего из четырех тактов равно 0, 2 мкс.

Фрагмент одного внутреннего цикла таймера в приведенной ниже программе выполняет команду вычитания и команду BTFSS (проверки появления 1 во 2-м бите регистра STATUS, сообщающей, что результат вычитания нулевой) за два цикла и команду безусловного перехода за 2 цикла, т.е. в сумме за 4 цикла. Максимально во внутреннем цикле может быть выполнено 255 подциклов (предельное значение десятичного числа, которое может быть введено в 8-ми разрядный регистр). При вычитании 255-й раз условие STATUS(Z)=1 выполняется, пропускается команда GOTO и происходит выход из цикла. Общее время выполнения внутреннего цикла:

255.4.0, 2 =204 мкс.

При организации трех внешних циклов происходит повторение всех внутренних циклов:

3.204 = 612 мкс.

На основании приведенного примера, подбором числа повторений в каждом цикле, можно рассчитать общее время паузы, созданной таймером. На основании приведенного примера, взяв число повторений в каждом цикле из задания, можно рассчитать общее время паузы, созданной таймером.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.