Скачиваний:
30
Добавлен:
27.04.2015
Размер:
32.44 Кб
Скачать

Инструкция по использованию ПО Инструкция по использованию ПО. Инструкция по отладке программного обеспечения с помощью пакета симуляции микроконтроллеров МК51. Для работы с пакетом симуляции микроконтроллеров МК51 обучающимся необходимы начальные навыки работы с персональным компьютером.

Настоящая инструкция рассчитана на читателя, знакомого с основными понятиями и приемами вычислительной техники и имеющего начальный опыт работы с персональным компьютером в рамках институтской программы. В случае, если освоение данной инструкции будет вызывать какие-то трудности, целесообразно повторить соответствующие разделы курсов “Информатика” и “Вычислительная техника”.

Пакет симуляции микроконтроллеров МК51 представлен на сайте в виде саморазворачивающегося архива 87с51.exe.

В состав пакета входят следующие функциональные группы программ:

Текстовой редактор, предназначенный для ввода и коррекции текстов программ на языке ассемблера и допускающий запуск введенной программы на трансляцию, линковку и симуляцию без выхода из редактора и без необходимости набора соответствующих команд.

Ассемблер микроконтроллера МК51, осуществляющий трансляцию введенного текста программы в машинные коды процессора МК51.

Редактор связей (линковщик), осуществляющий компоновку общего загрузочного .hex-файла из частей.

Симулятор микроконтроллеров МК51, позволяющий отследить визуально ход выполнения программы и изменения содержимого ячеек памяти в процессе ее выполнения.

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

Помимо пакета симуляции микроконтроллеров МК51 для отладки разрабатываемых программ потребуется какой-либо языковый пакет, обеспечивающий возможность создания файлов исходных данных по заданным формулам – BASIC, C, PASCAL, MATHCAD, .или любой другой. В настоящей инструкции при описании примеров в качестве языка высокого уровня будет использоваться BASIC, рассматривавшийся в курсах “Информатика” и “Вычислительная Техника” и входящий в стандартные комплекты поставки программного обеспечения персональных компьютеров.

 

Установка пакета симуляции микроконтроллеров МК51 на персональный компьютер Для установки пакета необходим IBM-PC – совместимый персональный компьютер с процессором не ниже 386. Размер оперативной памяти компьютера должен быть не менее 2 Мбайт. Установка пакета займет на жестком диске компьютера в общей сложности не более 1,5 Мбайт.

Для нормальной работы пакета на компьютере должна быть установлена операционная система MS-DOS 5.0 или выше, OS/2 WARP 3.0 или выше, Windows 3.11 или выше.

Установку пакета симуляции микроконтроллеров МК51на компьютер необходимо производить в следующей последовательности.

Записать саморазворачивающийся архив 87с51.ехе в корневой каталог рабочего жесткого диска, например, диска С:\.

Распаковать архив 87с51.ехе. Для этого необходимо стандартными средствами операционной системы или с помощью утилит (Norton Commander, Volkov Commander, DOS Nаvigator, Windows Commander, проводник или др.) активизировать выполнение файла 87с51.ехе. В большинстве случаев запуск файла на выполнение (установка курсора на файл и нажатие клавиши Enter или набор имени файла в командной строке) активизирует его самораспаковку. В некоторых случаях это действие вызовет не распаковку архива, а раскрытие на панели имени директории 87С51, содержащейся в архиве. При этом, как правило, мнемоническое изображение функциональной клавиши F4 на экране изменяет значение (Extract вместо Edit). В таких случаях следует пометить директорию 87С51 (клавишей INS или правой клавишей мыши) и нажать функциональную клавишу F4 или выполнить указанную утилитой команду распаковки архива (Extract).

В любом случае при возникновении проблем с распаковкой следует обращаться к лектору по указанным на сайте координатам.

По завершении процесса распаковки архива в корневом каталоге рабочего диска должна появиться директория 87С51 с необходимыми для дальнейшей работы файлами.

Проверить работоспособность пакета. Для этого необходимо запустить на выполнение файл 1.bat в директории 87С51; выполнение этого файла вызовет активизацию текстового редактора.

Загрузить в текстовый редактор текстовую программу (F3 – Enter Выбрать программу test.asm - Enter)

Оттранслировать программу ([Ctrl+F9] - Трансляция) Здесь и далее [ + ] означает одновременное нажатие клавиш, первая из которых нажимается первой.

Отлинковать программу ([Ctrl+F9] - Линковка)

Активизировать симулятор. ([Ctrl+F9] - Симуляция)

При работоспособности пакета симуляции на экране монитора в левой части должен отобразиться текст команд тестовой программы. При нажатии клавиши F10 содержимое аккумулятора должно установиться в значение 37Н (00110111В и символьное 7).

После проверки работоспособности пакета архив 87с51.ехе в корневом каталоге рабочего диска можно удалить.

Все действия, связанные с лабораторными работами по данному курсу, следует производить в директории 87С51. При наличии у пользователя опыта работы с компьютером можно отвести для работы с программами отдельные директории; при этом в файле autoexec.bat следует указать путь к директории 87С51 в параметре PATH=

Редактор текстов программ. Вызов редактора текстов программ осуществляется набором в командной строке имени файла запуска 1.bat или с помощью стандартных утилит.

После загрузки редактора на экране разворачивается циановое поле со строкой меню вдоль нижнего края экрана.

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

Ввод программы осуществляется в соответствии с правилами записи на языке ассемблера микроконтроллеров МК51 (см. раздел “Конспект лекций”).

ВНИМАНИЕ! Напоминаем, что первая позиция курсора в каждой строке предназначена для размещения метки.

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

F10-File-записать файл

и набором в поле развернутой редактором строки имени сохраняемого файла с расширением).

Загрузка в редактор ранее введенных программ с целью коррекции или симуляции осуществляется либо нажатием функциональной клавиши F3 с дальнейшим поиском в общем списке, либо одновременным нажатием клавиш [Alt+F3] с выбором одного из 10 последних загружавшихся файлов.

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

F10-File – создать файл.

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

Удаление строки - [Ctrl+Y]

Откатка (Отмена последнего действия) - [Alt+F6]

Выход из редактора - [Alt+X]

Пометка блока – F8

Пометка прямоугольного блока [Ctrl+F8]

Окончание пометки блока – F8

Копирование блока в память компьютера-

F10-Edit- Поместить в карман.

Копирование блока из памяти компьютера на экран, начиная с текущей позиции курсора –

F10-Edit - Взять из кормана.

Удаление с экрана помеченного блока.

F8-Y.

Переключение из редактора на системную консоль и обратно[Alt+F5] (через раз).

Поиск по контексту - F7.

Действия по замене фрагментов текста[Ctrl+F7], [Alt+F7] и т.п. или по меню

F10- Search

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

Для облегчения процессов отладки в редакторе предусмотрено меню пользователя, которое вызывается командой [Ctrl+F9]. В этом меню предлагается выбор активизации основных этапов отладки – трансляции, линковки и симуляции, а также возможность пересмотра листинга трансляции и куска распределения памяти процессора.

Внимание! Отладку программы необходимо всегда производить в следующем порядке:

Трансляция

Линковка

Симуляция

После любого исправления в тексте программы действия 1)... 3) должны быть выполнены обязательно!

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

 

Отладка программы. В процессе развития программы, написанной на любом языке, от текста до действующего программного продукта, она проходит два непременных этапа: трансляцию и редакцию связей (линковку).

На этапе трансляции осуществляется перевод мнемокодов команд, представленных в текстовом формате, в коды машинных команд процессора. На этом этапе проверяется правильность написания текста – синтаксис программы.

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

Разные языковые системы по разному выполняют трансляцию и линковку.

В языках – интерпретаторах, к которым относится, например, БЕЙСИК, каждый оператор программы сначала транслируется, затем линкуется и выполняется, и только потом программа переходит к трансляции следующего оператора. Такой переход, с одной стороны, в значительной мере облегчает поиск ошибок, останавливая программу на операторе, вызвавшем ошибку (включая переполнение, деление на ноль и т.п.). С другой стороны, в циклических программах со значительным количеством итераций или проходов цикла многократные трансляции и линковки одних и тех же операторов существенно снижают быстродействие выполнения программы.

В языковых системах- компиляторах (или трансляторах), к которым относится, в частности, и пакет симуляции микроконтроллеров МК51, транслируется весь текст программы.

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

В результате трансляции (компиляции) формируется так называемый объектный модуль (файл с расширением .obj) и листинг трансляции, предназначенный для сведения пользователя (в прилагаемом пакете симуляции – файл с расширением .prn ). Некоторые языковые системы трансляцию текста программы осуществляют в два этапа - с промежуточным переводом на язык ассемблера той ЭВМ, для работы с которой он предназначен.

В процессе линковки из отдельных объектных модулей, часть которых может быть размещена в стандартных или пользовательских библиотеках, компонуется так называемый исполняемый модуль, который рассчитан на дальнейшее автономное от языковой системы функциональное использование. Обычно такие файлы имеют расширение .exe, или .sav. Программы , разрабатываемые для последующей загрузки в память микроконтроллера МК51 и не предназначенные для выполнения на ЭВМ, естественно, имеют другие типы расширений. Такие файлы называются загрузочными. Загрузочные файлы, формируемые прилагаемым пакетом симуляции микроконтроллеров МК51, предназначены для загрузки в память микроконтроллеров с помощью специальных приборов – программаторов – или в программу–симулятор; они имеют расширение .hex. Помимо загрузочного .hex-файла, в процессе линковки формируется карта распределения памяти контроллера (файл с расширением .map.).

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

Для активизации трансляции текста разработанной программы необходимо выполнить действия меню

[Ctrl+F9] – Трансляция.

По этой команде редактором будет вызвана программа-транслятор, по завершению работы которой на экран системной консоли будет выдано сообщение об ошибках. Формат сообщения:

Имя прогр.asm: №строки Error Код ошибки: Вид ошибки

Ошибку в этом случае надлежит идентифицировать и исправить. На этап линковки можно переходить только тогда, когда в конце поля сообщения об ошибках будет иметь место следующее сообщение.

No lines contained errors.

No lines contained warnings.

Если в процессе исправления ошибок возникает потребность просмотра сообщений об ошибках, следует переключиться на системную консоль командой [Alt+F5], ее же следует использовать для возвращения в редактор.

Для активизации процесса линковки следует выполнить действие меню

[Ctrl+F9] – Линковка.

Программа – линковщик формирует свои сообщения об ошибках, однако на простых программах, разрабатываемых в рамках лабораторного практикума, их появление маловероятно.

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

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

 

 

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

Если объем файлов исходных данных невелик (не превышает 20…30 байт), то такие файлы могут быть созданы вручную. Для этого необходимо в текстовом редакторе создать файл,

(F10-File – создать файл)

содержащий необходимое количество символов (количество вводимых символов – любых – должно соответствовать требуемому количеству байт в файле), и сохранять его

(F10-File – записать файл- ввести название файла)

с расширением .ab, после чего из редактора текстов выйти ([Alt+X]).

Далее следует в режиме MS DOS (или окне MS DOS) вызвать редактор файлов с помощью команды

hiew.exe имя файла.ab

где параметру “имя файла” должно соответствовать имя созданного в текстовом режиме файла исходных данных.

В редакторе файлов следует нажать функциональную клавишу F4 для перевода введенных символов в шестнадцатиричный формат, а затем клавишу F3 для активизации редактирования. После указанных действий нажатием соответствующих клавиш 0…9, А, В, С, D, E и F можно вводить шестнадцатиричные числа, которые будут записываться по месту ранее набранных символов. Каждый байт будет представлен на экране двумя шестнадцатиричными символами, левый символ будет соответствовать старшей, а правый - младшей тетраде байта. Так, например, байту 0011 1010 будет соответствовать шестнадцатиричное число 3А.

После ввода необходимых шестнадцатиричных символов следует сохранить сделанные коррекции (нажатием клавиши F9) и выйти из редактора (F10).

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

Так, для создания файла sin1000.ad, содержащего 19 отсчетов синусоиды с частотой 1000 Гц и амплитудой 60 (шагов квантования) на частоте дискретизации 8000Гц (период дискретизации равен 125 мкс) может быть использована следующая программа на языке БЕЙСИК.

OPEN “sin1000.ad” for output as#1

FOR I=1 to 19

S=60* sin(2* 3.14159* 1000* 125E-6* I)

PRINT #1, S

NEXT I

CLOSE

PRINT “ГОТОВО”

END

Приведенную программу следует запустить на выполнение в языковой системе БЕЙСИКА; в результате успешного выполнения программы на экран будет выведено сообщение “ГОТОВО”, а в директории БЕЙСИКА появится файл sin1000.ad, который следует перенести в директорию 87С51. Этот файл представлен не в виде последовательности байт, а в кодировке ASCII, поэтому он сгенерирован с расширением .ad.

Просмотр этого файла в символах ASCII (команда hiew.exe sin1000.ad) даст отсчеты синусоиды,

42.42638

60

42.42648

1.431578E-04

-42.42628

-60

-42.42658

-2.863157E-04

42.42618

60

42.42669

4.294735E-04

-42.42608

-60

-42.42679

-5.726314E-04

42.42598

60

42.42689

А в шестнадцатиричных кодах (там же, F4)

20 34 32 2E 34 32 36 33 38 20 0D 0A 20 36 30 20

0D 0A 20 34 32 2E 34 32 36 34 38 20 0D 0A 20 31

2E 34 33 31 35 37 38 45 2D 30 34 20 0D 0A 2D 34

32 2E 34 32 36 32 38 20 0D 0A 2D 36 30 20 0D 0A

2D 34 32 2E 34 32 36 35 38 20 0D 0A 2D 32 2E 38

36 33 31 35 37 45 2D 30 34 20 0D 0A 20 34 32 2E

34 32 36 31 38 20 0D 0A 20 36 30 20 0D 0A 20 34

32 2E 34 32 36 36 39 20 0D 0A 20 34 2E 32 39 34

37 33 35 45 2D 30 34 20 0D 0A 2D 34 32 2E 34 32

36 30 38 20 0D 0A 2D 36 30 20 0D 0A 2D 34 32 2E

34 32 36 37 39 20 0D 0A 2D 35 2E 37 32 36 33 31

34 45 2D 30 34 20 0D 0A 20 34 32 2E 34 32 35 39

38 20 0D 0A 20 36 30 20 0D 0A 20 34 32 2E 34 32

36 38 39 20 0D 0A

- последовательность байт, не являющихся отсчетами синусоиды.

Для преобразования созданного файла в последовательность байт, каждый из которых отражал бы амплитуду очередного отсчета синусоиды, необходимо в командной строке в окне MS-DOS набрать команду:

iotran db sin1000.ad

После выполнения соответствующей программы в директории 87С51 будет создан файл sin1000.ab, удовлетворяющий требованиям совместимости по вводу в симулятор. В символике ASCII (команда hiew.exe sin1000.ad) файл будет иметь неудобочитабельный вид, а в шестиразрядных кодах (F4) – отражать 19 отсчетов синусоиды.

2A 3C 2A 00 D6 C4 D6 00 2A 3C 2A 00 D6 C4 D6 00

2A 3C 2A

В целях универсальности можно использовать программу с диалоговым вводом параметров сигнала, например:

PRINT “Ввести амплитуду синусоиды ”

INPUT A

PRINT “Ввести частоту синусоиды”

INPUT F

PRINT “Ввести частоту дискретизации”

INPUT FD

PRINT “Ввести количество отсчетов ”

INPUT N

OPEN “sinvs.ad” for output as#1

FOR I=1 TO N

S=A* sin(2* 3.14159* F/FD* I)

PRINT #1, S

NEXT I

CLOSE

PRINT “СИНУСОИДА ГОТОВА”

END.

Программа iotran.exe осуществляет перевод чисел в диапазоне –128…..+127, представленных в кодировке ASCII, в байты, а также обратный перевод.

Если в процессе симуляции разрабатываемой программы для микроконтроллера МК51 создается какой-то выходной файл (он должен создаваться с расширением .ab.), например, файл out.ab, то он может быть переведен в кодировку ASCII программой iotran для обеспечения совместимости с языками высокого уровня. Для этого необходимо в окне MS-DOS набрать

iotran bd out.ab

и программа iotran переведет его в кодировку ASCII в файл out.ad.

 

Симуляция программ. Вызов программы – симулятора и автоматическая загрузка в нее загрузочного (.hex) модуля программы микроконтроллера МК51 может быть произведена непосредственно из редактора текстов. Для этого в меню редактора текстов, в который загружен текст отлаживаемой программы, необходимо выполнить следующие движения в меню.

[ctrl+F9] – Симуляция.

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

Экран симулятора состоит из двух частей: меню (вдоль нижнего края экрана) и поля (все остальное). Переключение между меню и полем, осуществляется клавишей ESC.

Поле симулятора отображает содержимое ячеек памяти микроконтроллера:

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

Регистров текущего регистрового банка R0….R7 в шестнадцатиричных кодах и кодировке ASCII.

Аккумулятора в двоичной, шестнадцатиричной и ASCII кодировках.

Параллельных портов Р1…..Р3 в правой нижней части поля в двоичной, шестнадцатиричной и ASCII кодировках.

Других регистров и битов, обозначение которых соответствует описанию микроконтроллера в разделе “Конспект лекций”.

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

Параллельные порты представлены в поле симулятора двумя рядами обозначений. Верхний ряд отражает содержимое регистров защелок порта, их содержимое с клавиатуры недоступно и может изменяться по команде записи в порт, например, MOV P0, #5AH.

Нижний ряд симулирует внешние выводы (линии) порта. Эти линии доступны с клавиатуры, каждую из них возможно установить в логический 0 или 1, (это будет эквивалентно подключению внешних датчиков), если в соответствующем разряде регистра - защелки записана логическая 1. Если же в разряд регистра - защелки записан логический 0, то на соответствующем выводе порта автоматически устанавливается логический 0, значение которого с клавиатуры не изменяется. Этот принцип функционирования симулятора отражает реальные возможности работы с линиями параллельных портов, имеющих квазидвунаправленную архитектуру.

Меню симулятора ориентировано на диалоговый режим взаимодействия с пользователем, поэтому в целях улучшения наглядности изложения далее используются следующие обозначения:

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

- Нажатие клавиши Enter - <Enter>

- Реакция симулятора на очередное действие в меню (сообщение симулятора) - приводится в квадратных скобках, например [Area 1 2].

- Текст, подлежащий вводу с клавиатуры, приводится в угловых скобках, например, <p0, in>.

Ниже приведены основные возможности симулятора и доступ к этим возможностям через меню.

Если в процессе движения по меню произошла какая-либо ошибка, следует нажать на клавиатуре комбинацию клавиш [Ctrl+C]; нажатие этой комбинации возвращает пользователя в главное меню.

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

Просмотр содержимого запоминающих устройств микроконтроллера - на экране симулятора возможности просмотра представлены двумя окнами, обозначенными как Data Space. Верхнее окно называется Area 1, а нижнее - Area 2. При загрузке симулятора верхнее окно отображает содержимое ячеек памяти данных с адресами от 0 до 1FH, а нижнее - от 20Н до 3FН. Если требуется просмотреть содержимое ячеек в области памяти, лежащую выше этих адресов, например, с адреса 4ВН, например, через нижнее окно, необходимо выполнить следующие движения по меню симулятора:

Dump <Enter>[Area 1 2] 2 <Enter>[Absolute Indirect] Absolute

<Enter>[Start Address] <4BH><Enter>

Вместо движения курсором по пунктам меню можно вводить с клавиатуры буквы и цифры, соответствующие заглавным буквам обозначений пунктов меню, в этом случае выбор пункта меню не следует сопровождать нажатием клавиши Enter. Так, например, описанную операцию можно выполнить следующим образом:

<D> <2><A><4BH><Enter>

Этот способ движения по меню следует использовать при создании командных файлов (см. далее.).

Аналогичным образом может быть осуществлен просмотр участка памяти программ; в этом случае указания начального адреса следует задать как <С:4ВН>.

Если в программе используются какие-либо постоянные, занесенные в память программ псевдоинструкциями DB или DS, следует объявить эту область памяти как постоянное запоминающее устройство (ПЗУ). Например, если с адреса 200Н в памяти программ размещены 4 константы:

ORG 200H

DB 13H, 20H, 4AH, 8CH

следует объявить как ПЗУ область программной памяти с адреса 200H по адрес 203H.

Для этого необходимо выполнить следующее движение по меню:

Set <Enter> Memory-map <Enter> read- Only <Enter>

[LOWER Address]<C:200H><Enter>[UPPER Address]

<C:203H><Enter>[Memory defined from C:200H to C:0203H].

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

Например, если к порту P0 необходимо подключить файл sin1000.ab, содержащий отсчеты синусоиды (в виде байтов, см раздел "подготовка файлов данных"), следует выполнить:

IO <Enter>[IO FILE:Open Close] Open [IO InputFile]

<sin1000.ab><Enter>[Repiay Input File at EOF-Yes N0]

N0 [IO Output File]<Enter>[IO TRIGGER:Cycles Opcode access]

Opcode access [IO TRANSFER:Address, Dir: IN/OUT]

<P0,in><Enter>[IO Files sin1000.ab / Ready]

Ответ N0 на сообщение [Replay Input File at EOF-Yes N0] вызовет остановку симуляции программы по окончании отсчетов в подключенном файле (при каждом обращении к порту Р0 при симуляции программы будет читаться очередной байт файла sin1000.ab - отсчет синусоиды.

Если вместо N0 выбрать ответ Yes, входной файл будет рассматриваться как циклический и после ввода последнего байта при следующем обращении к порту P0 будет введен снова самый первый байт файла.

Если в результате работы программы формируется какой-то массив данных, выводимых через параллельный порт, например, выходной сигнал, выводимый через порт Р1, то эти данные могут быть сохранены в компьютере в виде файла, например, fout.ab. Для такого сохранения необходимо выполнить следующие движения по меню:

IO <Enter>[IO FILE:Open Close] Open [IO InputFile]

<Enter>[IO Output File] <fout.ab><Enter>

[IO TRIGGER:Cycles Opcode access] Opcode access

<Enter> [IO TRANSFER: Address, Dir: IN/OUT]

<P1,out><Enter>[IO Files / fout.ab Ready]

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

Описание последовательности работы с меню выглядят довольно трудоемкими. Обычно в процессе отладки подобные действия приходится выполнять многократно - ПОСЛЕ КАЖДОГО ИЗМЕНЕНИЯ ТЕКСТА ПРОГРАММЫ. Для облегчения работы в симуляторе можно создать командный файл.

Начало записи командного файла, например, 1.cmd, формируется следующем движением меню:

command File <Enter>[COMMAN FILE:Load SAVE: Open Close Restart]

Open <Enter> [COMMAND FILE to Open]<1.cmd><Enter>

[SAVING COMMAND FILE]

С момента выполнения этого набора действий симулятор запоминает все действия программиста. Так, для того, чтобы подключить к параллельным портам р0 и р1 ранее описанные файлы, следует набрать:

<I> <O> <sin1000.ab><Enter> <N>

<Enter> <O> <P0,in> <Enter>

<I> <O> <Enter> <fout.ab> <Enter>

<O> <p1,out> <Enter>

Остановить процесс записи действий программиста в файл 1.cmd следует

command File <Enter> Close <Enter>,

или лучше <F> <C>.

После выполнения этих действий в директории 87С51 рабочего диска появится файл 1.cmd. Его наличие позволит значительно быстрее подключить файлы к последовательным портам:

command File <Enter>[COMMAN FILE Load:SAVE:Open Close Restart]

Load <Enter> [COMMAND FILE to Load]<1.cmd><Enter>

или <F> <L> <1.смd><Enter>

Симуляция выполнения программы осуществляется либо в пошаговом режиме (F10 - одна команда вперед, F9 - одна команда назад), либо в автоматическом. Автоматический режим активизируется и выключается функциональной клавишей F1. Скорость симуляции регулируется функциональной клавишей F5 и отображается в поле SPD HI - высокая, MID - средняя, LOW - низкая. Симулятор обеспечивает возможность трассировки программы по точкам останова. Функциональная клавиша F2 активизирует режим ввода точек останова выполнения программы (появляется треугольник у верхней команды на экране). Выбор точек останова (движение треугольника) осуществляется клавишей F4 (вперед) и F2 (назад), а фиксация - клавишей F3 (треугольник превращается в стрелку).

При симуляции программы в автоматическом режиме ее выполнение останавливается на каждой из введенных точек останова. Дальнейшее выполнение активизируется клавишей F10 (шаг вперед) и F1 -включение автоматического режима. Рестарт микроконтроллера осуществляется движением по меню:

Reset <Enter> [RESET:Cpu Disptrace cYcles]

Сpu <Enter>

или <R> <C >

Выход из симулятора обеспечивается движением по меню:

Quit <Enter> Exit <Enter>

или <Q> <E>.