Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratorny_praktikum_chast_4_A5_dorabotanny.docx
Скачиваний:
122
Добавлен:
13.02.2016
Размер:
4.75 Mб
Скачать

Содержание отчета

Отчет должен содержать:

  1. Наименование и цель лабораторной работы.

  2. Условия, схемы алгоритмов и листинги программ к заданию № 20.3.

  3. Ответы на контрольные вопросы.

Контрольные вопросы

  1. Как формируется временная задержка методом программных циклов?

  2. Как формируется временная задержка с использованием таймера/счетчика?

  3. Укажите функцию из библиотеки компилятора MPLAB C30 для языка программирования С, предназначенную для организации временных задержек.

  4. Перечислите регистры предназначенные для настройки таймеров и укажите их назначение.

  5. Какие действия выполняет строка программы LR20_1 «#define FCY (FOSC / 2)»?

  6. Поясните назначение функции «_delay32(FCY)» в программе LR20_1.

Требования к знаниям и умениям учащихся

В результате выполнения лабораторной работы учащиеся должны знать:

  • особенности программной и аппаратной реализации временных функций в МК dsPIC33F;

  • структуру и режимы работы таймеров МК dsPIC33F.

Должны уметь:

  • составлять программы с помощью языка программирования С реализации временных функций, используя метод программных циклов и таймер/счетчик;

  • создавать проекты для прошивки МК dsPIC33FJ32MC204 в интегрированной среде MPLAB IDE 8;

  • выполнять компиляцию исходного кода программ прошивки МК учебного стенда НТЦ-31.000;

  • выполнять программирование МК учебного стенда НТЦ-31.000, а также проверку и отладку прошивки.

Методические указания

1 Краткие теоретические сведения

1.1 Реализация временных функций

Временные функции в микропроцессорных системах используются в случаях, когда необходимо выполнять какие либо действия периодически, либо производить измерение длительности какого либо события. Наибольшее распространение для реализации временных функций получили метод программных циклов и использование таймера/счетчика. Во всех случаях МК оперирует не непосредственно временем, а количеством машинных циклов, выполненных за интересующий интервал времени. Машинный цикл МК – это процедура выполнения ядром МК одной инструкции за один машинный такт, равный двум периодам тактирующего генератора. Частота внутреннего тактирующего генератора МК dsPIC33FJ32MC204 (по умолчанию) равна 7.37 Мгц. Следовательно, машинный цикл длится секунды.

1.2 Метод программных циклов

Метод программных циклов относится к программным способам реализации временной задержки и состоит в следующем. В некоторую переменную загружают число, которое затем в каждом проходе цикла уменьшается на 1. Так продолжается до тех пор, пока содержимое переменной не станет равной 0, что интерпретируется программой как момент выхода из цикла, и, следовательно, истечение требуемого промежутка времени. Время задержки при этом определяется числом, загруженным в переменную-счетчик и временем выполнения команд, образующих цикл.

Для организации временных задержек библиотека компилятора MPLAB С30 имеет специальную функцию для языка программирования С:

void_delay32(unsigned long cycles).

Недостатком программного способа реализации временной задержки является нерациональное использование ресурсов МК: во время формирования задержки МК практически простаивает, так как не может решать никаких задач управления объектом. В то же время аппаратные средства МК позволяют реализовать временные задержки на фоне основной программы работы.