Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОМТ (на редактировании).doc
Скачиваний:
31
Добавлен:
17.05.2015
Размер:
3.86 Mб
Скачать

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

  1. Создание нового проекта

Выбрать пункт меню Project > New... либо щелкнуть левой клавишей мыши по соответствующей кнопке на панели инструментов. В появившемся диалоговом окне, скриншот которого приведен на рис. 1.4., необходимо ввести название программы и путь к папке, где будут сохраняться рабочие файлы проекта. Путь к папке и название программы должны использовать только латинские буквы, цифры и не содержать пробелов. Щелкнуть по клавише OK.

Рис. 1.4. Диалоговое окно «Новый проект»

  1. Создание файла с исходным текстом программы

Выбрать пункт меню File > New, либо нажать соответствующую кнопку на панели инструментов. В рабочей области MPLAB откроется окно текстового редактора (см. рис. 1.5.), с помощью которого можно набирать текст своей программы. В первой лабораторной работе можно скопировать через буфер обмена Windows в это окно текст готовой программы, например из файла test_all.asm.

Сохранить (File > Save As...) исходный текст программы в рабочей папке проекта в файле с расширением .asm.

Рис. 1.5. Окно текстового редактора MPLAB

  1. Добавление файла к проекту

Открыть окно менеджера проектов (View > Project) (см. рис. 1.6.). Щелкнуть правой клавишей мыши по папке Source Files и выбрать пункт выпадающего меню Add Files.... При этом откроется диалоговое окно открытия файла, приведенное на рис. 1.7. Необходимо выбрать нужный файл и нажать клавишу Открыть.

Рис. 1.6. Окно менеджера проектов

Рис. 1.7. Окно добавления файла в проект

  1. Компиляция исходного текста программы в машинные коды

Перед компиляцией программы необходимо указать MPLAB тип используемого микроконтроллера. Для этого необходимо выбрать пункт меню Configure > Select Device... и в открывшемся диалоговом окне (рис. 1.8.) выбрать тип устройства. В данном случае это PIC16F873A.

Рис. 1.8. Окно выбора микроконтроллера

Доступ к конфигурационной ячейке микроконтроллера осуществляется через меню Configure > Configuration bits.. Вид окна битов конфигурации приведен на рис. 1.9. Поскольку в лабораторном макете в качестве источника тактового сигнала используется высокочастотный кварцевый резонатор, то в первой строке в колонке Setting необходимо выбрать пункт HS Oscillator (см. рис. 1.9). Содержимое остальных пунктов данного окна можно оставить без изменения.

Альтернативным способом настройки конфиругационных ячеек является настройка директивами в исходном коде. Например для выполнения вышеописанной настройки (использование кварцевого генератора в качестве тактового) в начале исходного текста достаточно разместить следующую директиву:

__CONFIG _HS_OSC ;

При этом флажок «Configuration Bits set in code» в окне Configuration Bits должен быть установлен.

Для преобразования исходного текстового файла в шестнадцатеричный hex-файл необходимо выбрать пункт меню Project > Make, либо щелкнуть по соответствующей кнопке на панели инструментов. При этом в рабочей папке проекта будут созданы выходные файлы с расширениями .o, .hex, .lst, .map, .err.

Рис. 1.9. Окно битов конфигурации

Просмотреть содержимое этих файлов можно в окне текстового редактора MPLAB (File > Open..., либо кнопка на панели инструментов). Ход выполнения компиляции и сообщения об обнаруженных ошибках отображаются в выходном окне MPLAB (рис. 1.10).

Рис. 1.10. Выходное окно MPLAB

  1. Запись кода программы во внутреннюю FLASH память микроконтроллера

Для программирования микроконтроллера и отладки программы в лабораторном макете применяется программатор-отладчик PICkit 2, который должен быть подключен к USB порту персонального компьютера. Указание MPLAB об использовании PICkit 2, как отладчика дается через пункт меню Debugger > Select Tool > PICkit 2. После подключения PICkit становятся доступными команды программирования в меню и соответствующие им кнопки на панели инструментов. Запись программы в память микроконтроллера осуществляется командой Debugger > Program, чтение памяти программ – Debugger > Read, а чтение энергонезависимой памяти данных – Debugger > Read EEDATA. Результат успешного программирования микроконтроллера, либо возникшие при этом ошибки отображаются в выходном окне MPLAB.

  1. Отладка (выполнение) программы

Запуск выполнения программы возможен в нескольких режимах. Для этого предусмотрены соответствующие команды в меню и кнопки на панели инструментов. Debugger > Run запускает программу в режиме реального времени. При частоте кварцевого резонатора 4 МГц время выполнения одной команды составляет ровно 1 мкс. Debugger > Animate запускает программу в режиме мультипликации. Время выполнения команды составляет примерно 0,5 с, что позволяет наблюдать ход выполнения программы. Debugger > Step Into приводит к выполнению одной очередной команды в основной программе и вложенных подпрограммах. Debugger > Step Over работает аналогично, но без выполнения подпрограмм. Очередная выполняемая команда обозначается курсором в виде зеленой стрелки, расположенной слева от текста программы.

Выполнение программы может быть остановлено командой Debugger > Halt, а также при помощи предварительно установленной точки останова, задаваемой в команде меню Debugger > Breakpoints... или путем двойного щелчка правой клавишей мыши по нужной строке исходного текста программы. Точка останова отображается в виде красного кружка с буквой В слева от текста программы. Неактивные точки останова отображаются в виде красной окружности.

Во время отладки можно наблюдать изменения производимые программой в памяти микроконтроллера и его встроенных периферийных устройствах. Для этого необходимо открыть соответствующее окно в рабочей области MPLAB.

Команда View > Disassembly Listing открывает одноименное окно (рис. 1.11), в котором отображается содержимое памяти программ в виде машинных кодов и мнемонических обозначений команд. View > EEPROM открывает окно энергонезависимой памяти данных (рис. 1.12). View > File Registers открывает окно памяти данных (рис. 1.13). View > Hardware Stack открывает окно аппаратного стека (рис. 1.14). View > Program memory – окно памяти программ (рис. 1.15). View > Special Funtion Registers – окно регистров специальных функций и др. (рис. 1.16).

Рис . 1.11. Окно дизассемблера

Рис. 1.12. Окно энергонезависимой памяти данных

Рис. 1.13. Окно памяти данных

Рис. 1.14. Окно аппаратного стека

Рис. 1.15. Окно памяти программ

Рис. 1.16. Окно регистров специальных функций