Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний

1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний.

2 Изучить по [2] принципиальную электрическую схему к лабораторной работе.

3 Изучить алгоритмы и исходные коды программ на языке программирования С, приведенные в методических указаниях.

4 Подготовить ответы на вопросы для самоконтроля.

5 Подготовить заготовку отчета (см. содержание отчета).

Вопросы для самоконтроля

1 Укажите область применения временных функций.

2 Дайте определение машинного цикла МК.

3 В чем заключается метод программных циклов?

4 В чем заключается метод реализации временных функций с использованием таймера/счетчика.

Приборы, оборудование и документация

1 Персональный компьютер.

2 Учебный стенд НТЦ – 31.000.

3 Методические указания к лабораторной работе.

4 MPLAB IDE 8. Руководство пользователя.

Порядок выполнения работы

1 Проверка подготовки учащихся к занятию по вопросам для самоконтроля в виде фронтального или программированного опроса и инструктаж по технике безопасности.

2 Произвести внешний осмотр учебного стенда и персонального компьютера (ПК) и убедиться визуально в отсутствии каких-либо повреждений и дефектов.

3 Подключить стенд к сети. Включить тумблер «Сеть» на задней панели стенда.

4 С помощью кабеля USB AM-BM через гнездо «USB» на задней панели стенда подключить стенд к USB – порту ПК.

5 Включить ПК и запустить MPLAB IDE.

6 Задание № 20.1.Создать проект LR20_1 для учебного стенда, который реализует следующее условие: мигать светодиодом VD1 с частотой 1 Гц, используя метод программных циклов. Листинг (исходный код) программы к заданию № 1 приведен в методических указаниях к данной лабораторной работе.

6.1 Выполнить пункты 2.1…2.7 руководства пользователя MPLAB IDE 8. При этом в пункте 2.4 в качестве инструмента программирования «Active Toolsuite» установите «Microchip C30 Toolsuite», а в качестве языка программирования «Toolsuite Сontents» выберите язык программирования C (MPLAB С30)
(рисунок 20.1), а в пункте 2.5 выбора каталога для сохранения проекта укажите LR20_1.

6.2 С помощью пункта меню «File ® Import» (рисунок 20.2) открыть исходный файл к заданию № 1. В каталоге файлов исходных кодов программ «Files LR17…LR20» на локальном диске D выбрать «LR20_1.hex».

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.1 – Выбор инструмента и языка программирования

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.2 – Выбор исходного файла к заданию № 20.1

6.3 С помощью пункта меню «Programmer ® Select Programmer» выбрать программатор PICkit2.

6.4 Запрограммировать МК стенда НТЦ-31.000 созданной программой, используя пункт меню «Programmer ® Program».

Результат программирования отобразится в окне сообщений, и в случае успешного программирования (сообщение - …PICkit2 Ready) необходимо перевести МК в рабочий режим с помощью пункта меню «Programmer ® Release From Reset».

6.5 После получения сообщения указанного на рисунке 20.3 МК запрограммирован.

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.3 – Сообщение о результатах прошивки МК программой к заданию № 20.1

6.6 Проверить работу светодиодного индикатора VD1.

7 Задание № 20.2. Создать проект LR20_2 для учебного стенда, который реализует следующее условие: мигать светодиодом VD1 с частотой 1 Гц, используя таймер/счетчик. Листинг (исходный код) программы к заданию №2 приведен в методических указаниях к данной лабораторной работе.

7.1 Выполнить пункты 2.1…2.7 руководства пользователя MPLAB IDE 8. При этом в пункте 2.4 в качестве инструмента программирования «Active Toolsuite» установите «Microchip C30 Toolsuite», а в качестве языка программирования «Toolsuite Сontents» выберите язык программирования C (MPLAB С30)
(рисунок 20.1), а в пункте 2.5 выбора каталога для сохранения проекта укажите LR20_2.

7.2 С помощью пункта меню «File ® Import» (рисунок 20.4) открыть исходный файл к заданию №2. В каталоге файлов исходных кодов программ «Files LR17…LR20» на локальном диске D выбрать «LR20_2.hex».

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.4 – Выбор исходного файла к заданию № 20.2

7.3 С помощью пункта меню «Programmer ® Select Programmer» выбрать программатор PICkit2.

7.4 Запрограммировать МК стенда НТЦ-31.000 созданной программой, используя пункт меню «Programmer ® Program».

Результат программирования отобразится в окне сообщений, и в случае успешного программирования (сообщение - …PICkit2 Ready) необходимо перевести МК в рабочий режим с помощью пункта меню «Programmer ® Release From Reset».

7.5 После получения сообщения указанного на рисунке 20.3 МК запрограммирован.

7.6 Проверить работу светодиодного индикатора VD1.

8 Задание № 20.3. Создать проект LR20_3 для учебного стенда НТЦ-31.000, который реализует следующее условие: при включении тумблеров SA1 и SA2 одновременно мигать светодиодами VD1 и VD2 попеременно с частотой 1 Гц, используя метод программных циклов. Листинг (исходный код) программы к заданию №3 приведен в методических указаниях к данной лабораторной работе.

8.1 Выполнить пункты 2.1…2.4 руководства пользователя MPLAB IDE 8. При этом в пункте 2.4 в качестве инструмента программирования установите «Microchip C30 Toolsuite»и выберите язык программирования С(рисунок 20.1).

8.2 В окне выбора пути к каталогу сохранения файлов проекта выберите «Browse…». В открывшемся окне (рисунок 20.5) выберите путь: «Мой компьютер\Локальный диск D\Lan\DSPIC33\TE111\Ivanov\LR20_3\».

Примечание – Фамилию учащегося, набранную буквами английского алфавита, выбрать из списка своей учебной группы и создать папку для лабораторной работы LR20_3 и нажать кнопку «Сохранить». Окно выбора пути к каталогу будет иметь вид, показанный на рисунке 20.6. Нажмите кнопку «Далее».

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.5 – Окно выбора пути к каталогу сохранения файла

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.6 – Выбор каталога для сохранения проекта к заданию № 20.3

8.3 В открывшемся окне (рисунок 20.7) добавить существующие файлы в проект: «+С:\+ProgrammFiles(x86)\+Microchip\+MPLABC30\+support\ +dsPIC33F\+gld\+p33FJ32MC204.gld».Нажмите кнопку «Далее».

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.7 – Окно добавления существующих файлов в проект

8.4 В открывшемся окне суммарной информации по проекту убедитесь, что МК и средство программирования выбраны правильно и нажмите кнопку «Готово» (рисунок 20.8).

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.8 – Суммарная информация по проекту

Файл появится в папке «Linker Script» инспектора проекта
(рисунок 20.9).

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.9 – Инспектор проекта

8.5 После создания проекта в него необходимо добавить файл с исходным кодом программы МК. Для этого необходимо воспользоваться пунктом меню «File ® New». В появившемся окне редактора исходных текстов (рисунок 20.10) наберите исходный код программы, приведенный в методических указаниях к данной лабораторной работе.

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.10 – Редактор исходных текстов программ

8.6 После написания исходного кода программы к заданию № 3 с помощью пункта меню «File ® Save As…»откройте окно «Сохранить как» (рисунок 20.11). В этом окне выберите папку «LR20_3», в которой сохраняли файл исходного кода проекта и в строке «Имя файла» задайте название исходного кода программы, как «LR20_3.c» (рисунок 20.12). Затем нажмите кнопку «Сохранить».

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.11 – Окно сохранения файла исходного текста программы

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.12 – Сохранение исходного кода программы к заданию № 20.2

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.13 – Добавление исходного файла в проект

8.7 Кликните правой кнопкой мыши в окне редактора исходного кода и выберите пункт «Add To Project»(рисунок 20.13).

После описанных действий инспектор проекта должен иметь вид, показанный на рисунке 20.14.

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.14 – Инспектор проекта

8.8 Выполните компиляцию проекта, используя пункт меню «Project ® Build All». Компилятор выводит отчет о компиляции в окне «Output». В случае успешной компиляции получите сообщение BUILD SUCCEEDED (рисунок 20.15). В случае обнаружения ошибок в исходном коде соответствующие сообщения будут выведены в область уведомлений. В таком случае необходимо исправить ошибки и запустить заново компилирование проекта.

8.9 После успешной компиляции с помощью пункта меню «Programmer ® Select Programmer» выбрать программатор PICkit2.

8.10 Запрограммировать стенд (прошить микроконтроллер) используя пункт меню «Programmer ® Program».

8.11 Результат программирования отобразится в окне сообщений, и в случае успешного программирования (сообщение – … PICkit2 Ready) необходимо перевести МК в рабочий режим с помощью пункта меню «Programmer ® Release from Reset».

8.12 После получения сообщения, указанного на рисунке 20.3, микроконтроллер запрограммирован.

8.13 Проверить работу светодиодных индикаторов VD1 и VD2 в зависимости от положения тумблеров SA1 и SA2.

9 После проверки преподавателем результатов работы закрыть MPLAB IDE, выключить ПК и учебный стенд.

10 Оформить отчет и сдать зачет.

Подготовка к выполнению работы. 1 Изучить по [1] теоретические вопросы, связанные с понятием машинного цикла, принципами функционирования таймера/счетчика и системы прерываний - student2.ru

Рисунок 20.15 – Отчет о компиляции

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

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

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

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

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

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

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

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

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

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

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

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

Наши рекомендации