Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


ПОЛНОЭКРАННЫЙ ОТЛАДЧИК АССЕМБЛЕРНЫХ ПРОГРАММ ДЛЯ МИКРОКОНТРОЛЛЕРОВ СЕМЕЙСТВА МК51



Полноэкранный отладчик-эмулятор для программ, написанных на языке ассемблера микроконтроллеров семейства МК51, предназначен для логической отладки программ. Каких-либо аппаратных средств отладчик не поддерживает.

Отладчик позволяет:

¨ загрузить для отладки tsk-файлы, вырабатываемые имеющимися кросс-средствами (транслятором с языка ассемблера), т.е. файлы чистого двоичного кода;

¨ просмотреть на экране дисассемблированный текст загруженной программы, включая адреса и коды команд, область имитируемого ОЗУ данных, область внешней памяти, памяти программ, содержимое всех регистров микроконтроллера;

¨ выполнить загруженную программу по шагам с просмотром результатов после каждого шага и в непрерывном режиме с остановом по точкам прерывания по достижении задаваемых пользователем адресов;

¨ внести изменения в загруженную программу в мнемонических обозначениях языка ассемблера, а также в машинных кодах;

¨ внести изменения в содержимое регистров, флагов и памяти в командном режиме и в режиме полноэкранного редактирования;

¨ вывести на печать или дисковые носители дисассемблированный текст, дампы памяти;

¨ сохранить содержимое любой области памяти в файле на дисковом носителе;

¨ загрузить память из дискового файла;

¨ получить трассировку программы;

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

ЗАПУСК ОТЛАДЧИКА

Для загрузки программы отладчика необходимо в командной строке ввести команду:

Drive: \Path\fd51.exe

При этом загружается среда отладчика FD51 и отладчик готов к работе (где Drive: \Path - имя диска и путь к файлу fd51.exe).

ВВОД КОМАНД

Сразу после запуска отладчик готов к приему команд пользователя - курсор находится в командной строке. В нижней строке экрана имеется меню функциональных клавиш F1-F10 - они выполняют наиболее употребительные команды. Остальные команды вводятся пользователем с клавиатуры с использованием алфавитно-цифровых клавиш. При вводе этих команд можно пользоваться для редактирования клавишами < Ins>, < Del>, < BackSpace>, < Home>, < End>, < Esc>. После начала ввода команды и до нажатия клавиши < Enter> функциональные клавиши недоступны. Если команда неверна, выдается сообщение об ошибке и звуковой сигнал.

ОПИСАНИЕ КОМАНД

ФУНКЦИОНАЛЬНЫЕ КЛАВИШИ

¨ F1 - выполнить текущую инструкцию загруженной программы. Текущая инструкция - это инструкция, выделенная в окне дисассемблированного текста светлым прямоугольником. После выполнения на экране можно сразу наблюдать результаты ее выполнения.

¨ F2 - выполнять программу до следующей по адресу за текущей инструкцией. Эта клавиша позволяет выполнить подпрограмму или цикл как одну инструкцию, что удобно, так как не нужно просматривать уже отлаженные подпрограммы.

¨ F3 - позволяет представить числовую информацию на экране (содержимое регистров и памяти) в десятичной, а при повторном нажатии - в двоичной форме. После запуска информация представлена в шестнадцатеричном виде.

¨ F4 - переключает большое окно памяти с внутренней (INT RAM) на внешнюю (EXT RAM) и обратно.

¨ F5 - установка точек прерывания (см. п. 5).

¨ F6 - переключает форму представления памяти в окне в двоичную и обратно.

¨ F7 - листает окно памяти данных вверх на одну строку.

¨ F8 - листает окно памяти данных вниз на одну строку.

¨ F9 - листает окно памяти программ вверх на одну строку.

¨ F10- листает окно памяти программ вниз на одну строку.

 

Для быстрого листания можно пользоваться следующими клавишами:

 

< Home> - листает окно памяти данных вверх на одну страницу.

< End]> - листает окно памяти данных вниз на одну страницу.

< PgUp> - листает окно памяти программ вверх на одну страницу.

< PgDn> - листает окно памяти программ вниз на одну страницу.

КОМАНДЫ ОТЛАДЧИКА

Для быстрого получения справки по командам можно ввести команду " Н" или нажать комбинацию клавиш < Ctrl> +< H> ".

В настоящем описании используются следующие обозначения:

¨ параметры заключены в угловые скобки, например < адрес>.

¨ необязательные параметры заключены в квадратные скобки, например [< адрес> ].

Все числовые значения должны иметь шестнадцатеричный формат, при этом не требуется указывать символ " h".

 

L [< тип памяти> < нач. адрес>, ] < файл. спец.> [/A]. Загрузить файл в память. < Тип памяти> может быть I, E или P. В соответствии с этим параметром файл загружается во внутреннюю (Int), внешнюю (Ext) или программную (Pgm) память. < Нач. адрес> и < тип памяти> указывается только при загрузке чистого двоичного кода. При загрузке файла, выработанного ISIS-II MACRO-ASSEMBLER'ом, нужно указать только спецификацию файла и ключ /A.

Пример: L I 01F, A: \PGM\T1 - загрузить двоичный файл во внутреннюю память с адреса 01F.

 

S < тип памяти> < нач. адрес> -< кон. адрес>, < файл. спец.>. Сохранить область памяти в дисковом файле (вообще говоря, во всех командах в качестве < файл. спец.> допускается любая корректная в DOS спецификация файла, например COM1). < нач.адрес> и < кон.адрес> указывают соответственно начало и конец сохраняемой области. Сохраненный командой S файл можно потом снова загрузить командой L.

Пример: S P 20-642, C: \PGMLIB\MYFILE

 

PRT < тип памяти> < нач. адрес> -< кон. адрес> [, < файл. спец.> ]. Распечатать дамп области памяти в шестнадцатеричном формате. Если не указан < файл. спец.>, то дамп выводится на принтер.

 

PRTD < нач. адрес>, < количество команд> [, < файл. спец.> ]. Распечатать дисассемблированный текст, начиная с < нач. адреса>. Вывод по умолчанию на принтер.

 

R < номер регистра> =< число>. Занести число в регистр текущего банка. Число должно быть байтом.

Пример: R4=FF

 

< Имя регистра> =< число>. Занести число в регистр специального назначения. Можно использовать следующие имена: A, B, TH0, TH1, TL0, TL1, DPH, DPL, DPTR, SP, IP, IE, TMOD, TCON, SCON, SBUF, PC. Число для PC и DPTR может быть и двухбайтовой величиной.

Пример: SP=20 DPTR=FF00

 

< Имя флага> =< число>. Установить или сбросить флаг в PSW. Имена флагов: C, AC, F0, S1, S0, OV, P. Если число=0, то флаг сбрасывается, иначе - устанавливается.

Пример: S1=0

 

PO < номер порта> =< число>. Занести число в порт. Номер порта может быть 0-3.

Пример: PO2=12

 

D < адрес>. Установить адрес дисассемблированного текста в окне.

Пример: D 0240

 

< Тип памяти> < адрес> [-< кон. адрес> ]=< число>. Занести число в память. Если указан < кон. адрес>, то этим числом заполняется область памяти.

Пример: I 22=55 P 0-40=FF

Возможно возникновение неоднозначности при заполнении некоторых ячеек памяти. Например, команда " P C=23" будет воспринята не как занесение числа 23 в память программ по адресу 0C, а как команда установки счетчика команд (PC) в значение 23. В этом случае нужно явно указать, что это адрес: P 0C=23.

 

< Тип памяти> < адрес>.< номер бита> =< число>. Установить или сбросить бит в памяти. < Номер бита> может быть 7-0 (старший бит - 7).

Пример: I 20.6=1

 

< Имя регистра>.< номер бита> =< число>. Установить или сбросить бит в регистре специального назначения (A, B, P00-P03, IP, IE, TMOD, TCON, SCON).

Пример: TMOD.3=0

 

M < тип памяти> < нач. адрес>. Установить начальный адрес памяти в окне.

Пример: M I 20 M E 0FF M P 0

 

G [< нач. адрес> [, < кон. адрес> ]]. Выполнить программу с < нач. адреса> до < кон. адреса>. Если < нач. адрес> не указан, выполнение начинается с текущей команды (текущая команда выделена белым прямоугольником). < Кон. адрес> можно не указывать, если используются точки прерывания. Выполняющуюся программу можно остановить нажатием любой клавиши. G без параметров можно ввести нажатием < Alt-F10>. Можно указать только конечный адрес, но запятая должна присутствовать.

Пример: G 100-FF0 G, 2200

 

T ON [, < файл. спец.> ]. Включить трассировку программы. По умолчанию трассировочные записи выводятся на принтер.

 

T OFF. Выключить трассировку.

 

INT < 0/1> =< число>. Имитировать высокий или низкий уровень на входах INT0 или INT1.

Пример: INT1=0

 

BA=< адрес>. Установить новую " точку отсчета" для дисассемблирования. Эта команда полезна при просмотре таблиц, зашитых в памяти программ, когда при дисассемблировании " назад" неизвестно откуда вести дисассемблирование.

 

RSTC. Сбросить счетчик времени выполнения программы.

 

QUIT. Выход в DOS.

 

RST. Имитируется сброс процессора.

 

 

Укладачі:

 

Віктор Васильович Ткачов

Микола Володимирович Козар

Владислав Іванович Шевченко

Станіслав Миколайович Проценко

Олег Вікторович Карпенко

Володимир Валентинович Надточий

Марина Олексіївна Ткачук

 

 

РОБОЧИЙ ЗОШИТ СТУДЕНТА

з дисциплін

“Основи побудови мікропроцесорних систем

управління”, “Мікропроцесорна техніка”,

“Програмні засоби систем управління”

для студентів спеціальності

АГ–8.092501 Автоматизоване управління технологічними процесами

АТ, МЕ–8.091401 Системи управління і автоматики

СМ–8.091501 Комп`ютерні системи та мережі

 

Підписано до друку 15.01.10. Формат 30х42/4.

Папір офсет. Ризографія. Ум. друк. арк. 3, 7.

Обл. вид. арк. 3, 7. Тираж 150 прим. Зам. №

 

Національний гірничий університет

49027, м. Дніпропетровськ-27, просп. К. Маркса, 19.

 


Поделиться:



Последнее изменение этой страницы: 2019-04-09; Просмотров: 289; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.041 с.)
Главная | Случайная страница | Обратная связь