
ASSEMBLER / Отладка проекта в uVision2
.docПример отладки проекта для учебного контроллера в среде разработки Keil μVision2.
В общем случае для отладки проекта необходимо:
-
Настроить отладчик
-
Установить соединение и загрузить программу в контроллер
-
Установить счетчик команд (PC) = 8000h
-
Запустить программу
Внимание! В соответствии с распределением памяти учебного контроллера, требуется указать директиву «ORG 8000h» в начале ассемблерной программы.
Настройка отладчика
-
Запустите μVision2, щелкнув по ярлыку
-
Откройте проект, выбрав пункт меню Project->Open Project… (или создайте новый).
-
Откройте окно настройки параметров Target 1, выбрав в контекстном меню (правая кнопка мыши) пункт «Options for Target ‘Target 1’»
Появится окно настройки параметров проекта, которое имеет несколько вкладок. Наиболее часто используются следующие вкладки:
Device – выбор типа МП
Target – настройка основных параметров проекта
Output – выбор формата выходных данных компилятора
C51 – задание уровня оптимизации и других параметров компилятора языка C
Debug – выбор типа и установка свойств отладчика/эмулятора
-
Укажите тип устройства Intel->80C51GB на вкладке «Device»
-
На вкладке Target, в области «Off-chip Code memory» укажите параметры памяти программ Eprom, (Например Start: 0x8000, Size: 0x4000) в соответствии с распределением памяти контроллера. Частоту кварцевого генератора «Xtal (MHz)» установите равной 11.0592 МГц.
Если необходимо использовать внешнюю память данных (XRAM) укажите её параметры в области «Off-chip Xdata memory» (Например, Start 0xD000h, Size 0x1000h).
-
На вкладке Debug выберите опцию «Use: Keil Monitor-51 Driver». Поставьте галочку «Load application on startup».
ПРИМЕЧАНИЕ: Для отладки программы без контроллера можно использовать симулятор. Для этого выберите вариант «Use Simulator» на вкладке Debug. Порядок остальных действий аналогичен.
-
Для настройки параметров COM порта нажмите кнопку Settings на вкладке Debug. Выберите имя порта, к которому подключен контроллер (COM1, COM2), и скорость соединения (19200, 9600 бит/сек). Разрешите создание контрольных точек останова, для чего поставьте галочку «Stop Program Execution with Serial Interrupt». Нажмите кнопку OK.
-
Закройте окно параметров, нажав кнопку OK.
-
Откомпилируйте проект, убедитесь в отсутствии ошибок.
-
Сохраните все файлы.
Подключение к контроллеру
-
Подключите контроллер к выбранному COM порту кабелем.
-
Включите питание контроллера. Выберите в меню контроллера пункт «Select mode»: Monitor, затем скорость порта 19200 или 9600.
На экране должен появиться указатель режима «Monitor mode speed:19200» или «Monitor mode speed:9600». Скорость, выбранная на контроллере, должна совпадать со скоростью, указанной в параметрах COM-порта.
Для перемещения по меню используйте клавиши
4 – влево
6 – вправо
# – подтверждение (Enter)
* – отмена (выход)
-
Выберите в меню Debug-> «Start Debug Session» или щелкните по кнопке
панели инструментов (также можно нажать Ctrl+F5).
Среда разработки должна соединиться с контроллером и загрузить программу. Ход загрузки программы показывает индикатор в левом нижнем углу экрана.
Если появилось окно с сообщением об ошибке,
проверьте еще раз параметры отладчика на вкладке Debug и правильность физического соединения. Возможно, придется использовать другой COM порт.
Признаком успешной загрузки программы является отсутствие сообщений об ошибках на вкладке Command основного окна
-
Установите в счетчике команд (PC) значение 8000h, выполнив команду отладчика. Следует ввести в поле справа от символа ‘>’ текст $=0x8000 и нажать Enter (см. рисунок).
Отладчик автоматически перейдет в окно «Disassembly» и покажет дизассемблированный текст программы. Символом $ обозначается счетчик команд.
-
Вернитесь в окно с текстом программы
Использование отладчика
В режиме отладки главное окно среды разработки принимает вид, показанный на рисунке:
Назначение кнопок управления (см. рисунок):
– сброс МК и
установка PC=8000h
F5 –
запуск
программы на выполнение
– остановка
программы
F11 – шаг
с заходом в подпрограмму
F10 – шаг
без захода в подпрограмму
Ctrl+F11 –
выход из
подпрограммы (выполнение до инструкции
RET)
Ctrl+F10 –
выполнение
программы до текущей строки
Для трассировки ассемблерной программы по шагам следует нажимать клавишу F11 и наблюдать результат исполнения после каждого нажатия.