Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания - Eclipse.pdf
Скачиваний:
84
Добавлен:
18.05.2014
Размер:
971.66 Кб
Скачать

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

Откройте файл листинга в редакторе, дважды щёлкнув курсором мыши по имени файла в обозревателе проектов. Найдите в нём фрагменты исходного текста программы, машинного кода и дизассемблированного машинного кода.

1.4. Подготовка к отладке программы

Для того чтобы начать отладку программы, необходимо предварительно настроить профиль отладки в Eclipse. При импорте заготовочных файлов (см. 1.1.2) в проект уже был импортирован один или несколько файлов профилей отладки. Для того чтобы начать использовать один из них, необходимо дополнительно указать имя проекта и имя исполняемого файла в настройках этого профиля.

Вызовите окно настройки профилей отладки через меню Run → Debug Configurations. Появится окно, показанное на рис. 1.10. В древовидном списке в левой части окна разверните пункт «C/C++ Application», выделите в нём пункт Olimex (или J-Link, в зависимости от используемого отладчика). В правой половине окна введите в поле «Project» название проекта (можно также воспользоваться кнопкой «Browse» для выбора проекта), а в поле «C/C++ Application» – имя исполняемого файла. Нажмите кнопку «Apply» («применить») в нижней части окна, затем закройте окно кнопкой «Close».

1.5. Отладка программы

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

17

Рис. 1.10. Настройка профиля отладки

Перед началом отладки убедитесь, что необходимая служебная программа запущена и работает. Достаточно запустить её один раз при начале работы в Eclipse или непосредственно перед отладкой. После завершения отладки выключать её не нужно.

 

 

 

Таблица 1.2

 

 

 

 

Программатор-

Название

Служебная

Способ запуска

отладчик

профиля

программа для

 

 

отладки

отладки

 

 

 

 

 

Olimex

Olimex

OpenOCD

Меню Пуск → Программы → Eclipse

 

 

 

ArmDev → OpenOCD

 

 

 

 

J-Link

J-Link

SEGGER J-Link

Меню Пуск → Программы → SEGGER

 

 

GDB Server

→ J-Link ARM … → J-Link GDB Server

 

 

 

 

Отсутствует (при

Simulator

 

 

работе вне

 

лаборатории)

 

 

 

 

 

 

 

Для запуска отладки используется соответствующая кнопка, расположенная на панели инструментов (рис. 1.11). Эта кнопка совмещена со списком. При запуске отладки в первый раз Eclipse предложит выбрать профиль отладки. Выберите профиль отладки в соответствии с табл. 1.2. Если необхо-

18

димо произвести отладку программы вне лаборатории (например, на домашнем компьютере), выберите профиль «Simulator». В этом случае выполнение программы будет происходить на встроенном программном симуляторе микропроцессора (без периферии). При работе в лаборатории отладка программ и демонстрация их работы преподавателю должна осуществляться на реальном оборудовании (т. е. без использования симулятора).

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

В дальнейшем, после выбора профиля отладки, нажатие на левую половину кнопки отладки будет запускать отладку с последним выбранным профилем. Отладка также может быть запущена из меню Run → Debug или клавишей F11.

Рис. 1.11. Кнопка запуска отладки

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

При запуске отладки происходят следующие действия, определяемые настройками профиля отладки, отладчика и служебной программы:

1)производится сброс и остановка процессора целевого микроконтрол-

лера;

2)программа записывается в память микроконтроллера;

3)отладчик настраивает процессор для запуска программы;

4)процессор запускается и выполняет программу до момента входа в процедуру обработки прерывания по сбросу, после чего выполнение приостанавливается;

5)Eclipse переключается в режим отладки.

Внешний вид Eclipse после переключения в режим отладки показан на рис. 1.12. В верхней части окна в панели отображения «Debug» находится кнопочная панель управления выполнением программы (рис. 1.12, поле 1). Описание назначения кнопок этой панели приведено на рис. 1.13. В левой части окна располагается панель «Registers» («Регистры») (рис. 1.12, поле 2).

19

Раскройте в ней элемент «Main», чтобы увидеть значения регистров процессора.

Рис. 1.12. Окно Eclipse в процессе отладки

Рисунок 1.13. Панель управления выполнением программы

1– «продолжить выполнение»

2– «приостановить выполнение»

3– «завершить отладку»

4– «шаг с заходом в подпрограмму»

5– «шаг с обходом» («шаг на следующую строку»)

6– «вернуться из подпрограммы»

20

Рис. 1.14. Область редактора исходного текста и панель дизассемблера при отладке программы; 1, 3 – маркеры точки останова; 2, 6 – маркеры текущей инструкции; 4 – номер строки исходного текста программы; 5 – адрес инструкции в памяти контроллера

Перейдите в область редактора и сделайте несколько шагов, нажимая кнопку «Шаг с обходом» панели управления выполнением программы (рис. 1.13, поле 5) или клавишу F6.

Выполнение каждой инструкции будет сопровождаться перемещением маркера текущей инструкции (рис. 1.14, пп. 2, 6). Маркер текущей инструкции указывает на инструкцию, которая будет выполнена на следующем шаге. Команда «шаг с обходом» приведёт к выполнению этой инструкции и смещению маркера на следующую позицию.

Продолжите выполнение программы в пошаговом режиме. Обратите внимание на изменения значений регистров в панели «Registers». Определите команды на языке ассемблера, выполнение которых приводит к включению и выключению светодиода на отладочной плате.

Затем запустите автоматическое выполнение программы нажатием кнопки «Продолжить выполнение» на панели управления выполнением программы (рис. 1.13, поле 1) или клавиши F8. Посмотрите на поведение светодиода на отладочной плате. Нажмите кнопку «Приостановить выполнение» на панели управления выполнением программы (рис. 1.13, поле 2). Инструкция, на которой произошла остановка программы, будет отмечена маркером.

21

Нажмите кнопку «Завершить отладку» (рис. 1.13, поле 3) для того, чтобы закончить отладку.

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

1.Титульный лист и задание.

2.Алгоритм работы программы.

3.Описание переменных.

4.Описание использованных регистров.

5.Листинг программы.

6.Описание технологии разработки и отладки программ на языке ассемблера.

22