Основы микропроцессорной техники

         

Симулятор MPSIM


Симулятор MPSIM представляет собой симулятор событий, предназначенный для отладки программного обеспечения PIC-контроллеров. MPSIM моделирует все функции контроллера, включая все режимы сброса, функции таймера/счетчика, работу сторожевого таймера, режимы SLEEP и Power-down, работу портов ввода/вывода.

MPSIM запускается из командной строки DOS, конфигурируется пользователем и непосредственно применяет выходные данные ассемблера MPASM.

Перед использованием симулятора необходимо отассемблировать исходный файл <file_name>.asm и получить файл объектного кода в формате INHX8M, создаваемый MPASM по умолчанию:

MPASM <file_name>.asm <RETURN>

Чтобы запустить симулятор, необходимо набрать в командной строке

MPSIM<RETURN>.

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

При запуске симулятор MPSIM начинает искать командный файл MPSIM.INI. Этот текстовой файл создается пользователем и используется для задания всех задействованных в программе параметров.


Рис. 6.2.  Вид рабочего окна симулятора MPSIM.

Один из примеров файла MPSIM.INI приведен ниже.

Пример 12.1. Пример файла MPSIM.INI (html, txt)

В представленном файле указаны: тип микроконтроллера, система счисления данных по умолчанию, регистры, содержимое которых выводится на экран, способ представления данных, рабочие параметры. Любая команда, которая исполняется MPSIM, может быть задана в файле MPSIM.INI, который определяет начальное состояние программы. При работе MPSIM создает файл MPSIM.JRN, в котором сохраняются все сведения о нажатии клавиш в процессе работы.


В файле MPSIM. INI допускается вводить комментарии, которые даются после знака «;», но не допускается использование пустых строк.

Основные команды, применяемые в симуляторе MPSIM, приведены в табл. 6.6. Когда эти команды вводятся в сеансе работы с MPSIM, они заносятся в файл MPSIM.JRN, который используется при создании расширенного файла MPSIM.INI. Данный файл можно задействовать для выявления ошибок и обеспечения нормального выполнения программы после исправления кода.

Таблица 6.6. Основные команды симулятора MPSIM.КомандаПараметрКомментарии
AB -Прерывание текущей сессии
AD Reg[, Radix[, Digits]] Вывод содержимого регистра на экран в указанном формате и заданной системе счисления X, B или D
B [addr] Установка точки останова по текущему или указанному адресу
C

[#break]
Продолжение выполнения программы с пропуском указанного количества следующих точек останова
DB -Вывод на экран всех активных точек останова
DI [addr1[,addr2]] Вывод на экран фрагмента памяти программ
DR -Вывод содержимого всех регистров
DW [E|D] Разрешение/запрещение функционирования сторожевого таймера
E [addr] Выполнение программы с текущего или указанного адреса
F Reg Вывод на экран содержимого регистра и возможность его редактирования пользователем
GE filename Получение и выполнение командного файла. Это способ загрузки командного файла .INI
GO -Запуск МК и начало выполнения программы
IP [time|step] Ввод входных воздействий в соответствии со значением параметра step в файле Stimulus
LO filename Загрузка в MPSIM файлов .HEX и .COD
M addr Вывод на экран содержимого памяти программ, начиная с адреса «addr» и возможность его редактирования. Ввод «Q» завершает команду.
P device Выбор типа моделируемого МК
Q -Выход из MPSIM и запись команд в файл .JRN
RE -Сброс времени выполнения и счетчика циклов
RS -Сброс моделируемого МК
SE pin|port Вывод на экран состояния указанного вывода или порта и возможность его изменения
SR O|X|D Установка системы счисления по умолчанию
SS [addr] Пошаговое исполнение, начиная с указанного адреса. При отсутствии адреса – исполнение идет с текущего места
ST filename Загрузка файла стимуляции
W Отображение состояния регистра W с возможностью его модификации
ZM addr1,addr2 Очистка памяти программ с адреса addr1 по addr2
ZR -Сброс всех регистров МК
ZT -Сброс таймера/счетчика МК
<


p> Для моделирования внешних тестовых событий (воздействий) на моделируемый МК используются файлы стимуляции с расширением .STI. Эти файлы используются MPSIM для того, чтобы обеспечить подачу однократных и повторяющихся входных сигналов в процессе выполнения программы. При этом можно наблюдать на экране, как МК реагирует на сигналы.

В качестве примера ниже приведен файл для тестирования программы, выполняющей опрос состояния линии 1 порта A.

! test1.STI STEP RA1 1 1 !Установка на входе RA1 состояния "1" 200 0 !Поступление на вход RA1 сигнала "0" 1000 1 !Переход сигнала на входе RA1 в "1" 1200 0 !Повторная подача нулевого сигнала Файл воздействия состоит из множества состояний, для которых задается параметр STEP, определяющий число циклов, в течение которых поддерживается указанное состояние. Он позволяет одновременно подавать сигналы на различные выводы МК. В файле воздействия можно указать любой вывод МК, в том числе и вывод сброса (_MCLR). Для обозначения комментариев используется знак !.


Содержание раздела